Sunday, August 28, 2022

Dart Ders Notlarım 16: Atama Operatörleri

 

Dart Ders Notlarım 16: Atama Operatörleri


void main() {

  /*

  Atama Operatörleri

  */


//  = eşittir

  // sağdaki değeri soldaki değişkene aktar veya ata anlamında.

  int a = 1; // int tipinde bir değişken tanımladık ve değerini 1 verdik.

  //sağdaki 1 değerini eşittirin solundaki a değşkenine aktardık.


  a = 2; // bu işlemi beğenmedik ve a değişkenine 2 değerini atadık.


// += artı eşittir

  //a değişkenine 1 ekle ve tekrar a değişkenine aktar.

  //a değişkeni 2 yidi.  2+1=3 oldu. bu 3 değerini a ya ata.

  a = a + 1; //burda a 3 olmuştu.

  //bunu yapmanın az da olsa kısa bir yolu

  a += 1; // şöyle okunabilir. işaretlerin sağını solunu topla sola ata :)

  print(a); //üstteki işlemden sonra a yı 4 olarak çıktı alıcaz.


  //bu ifade a = a + 1; ile bu ifade a += 1; aynı işlemi yapıyor. iki ifadede de

  //değişkene 1 ekleyip değişkene atıyoruz.


// -= eksi eşittir

  int b = 10;


  //şöyle okunabilir. soldan sağı çıkar sola ata.veya değişkene ata.

  b -= 3; // bu aslında şunla aynı. b=b-3

  print(b); //7


// *= çarpı eşittir

  int c = 3;

  c *= 5; //sağı solu çarp sola ekle. veya değişkene ata. Bu ifade c=c*5 demek.

  print(c); //15


// /= bölü eşittir

  double d = 20; //double verdik çünkü kalanlı çıkabilir diye.

  //diceksiniz ben sayıları biliyorum kalanlı çıkmayacak neden illa double

  //istiyor sistem.programcılıkta bir kural vardır. yazılım yaş tahtaya basmaz.

  //temel prensipleri vardır ve bunlar hata olmasın diye konulmuştur.yarın o

  //değişkeni başka bir sayıya bölmeyeceğinin garantisi yok :)

  d /= 10; //solu sağa böl sola ata. aslında d = d/20 ile aynı şey.

  print(d); //2.0


// ~/= tilda bölü eşittir

  //arkadaşlar burda da double tanımladık mı hata alıyoruz. bilin bakalım neden.

  //şimdi bölme işlemi var double olması gerekmez mi diyoruz ama tilda işareti

  //bize tam sonuç dönecek. eee o zaman double olmaz ki. sonucumuz tam çıkacağı

  //için biz burda int değişken tanımlıyoruz.

  int e = 22;

  e ~/= 7; //solu sağa böl sola ata. AMA tam kısmını ata.

  //aslında d = d/20 ile aynı şey.

  print(e); //3


// %= mod eşittir

  int f = 21;

  f %= 5; //solu sağdaki sayıya böl kalanı sola ata.

  print(f); //1


// ??= soru işaretleri eşittir

  //arkadaşlar bu işlem bir kontrol yapıyor aslında.

  //soldaki değişken boş ise sağdaki değeri ona ata.

  //eğer doluysa zaten bir değere sahipse hiç bir şey YAPMA. Anladın mı YAPMA :)

  var g = 1; //g 1 değerine sahip

  //g ??= 9; //soldaki boş ise sağdakini ona ata. AMA boş değil. g hala bir.

  print(g); //1 // sonuç bir çıakcaktır. g değeri değişmedi.


  //şimdi değişkenimizi null bırakalım ve o şekilde deneyelim. iki şekilde null

  //yapabiliyoruz ve ikisine de bakalım.

  //birde null a sonra değer atamak için var tipiyle tanımlanmasını istiyor.

  //yine güvenlik gerekçesiyle tabi :)

  var h; //h null dur yani bir değere sahip değil.

  var i = null; //i null dur. değeri yok.

  h ??= 999; //soldaki boş ise sağdakini ona ata. Boş ve atama gerçekleşecek.

  i ??= 1000; //soldaki boş ise sağdakini ona ata. Boş ve atama gerçekleşecek.

  print(h); //999

  print(i); //1000

  /*  bu kontrolü şöyle düşünebiliriz. varsayılan değerimiz vardır. bir yerden

  değer bekliyoruzdur. o değer gelirse ne ala. yok eğer gelmez ise varsaydığımız

  değeri yapıştır gitsin.

  kafadan örnek vereyim. hala saha rezervasyon programı yapıyosunuzdur.

   24 saat öncesine kadar   para yattıysa ne ala gelen değeri işle. 

   ilgili saati "ünili çocuklar" kiraladı.

  ünili çocuklar text girdisi olsun. kiralayanların lakabı :)

  yok eğer PARA YATMADIYSA varsayılan değeri yapıştır. ilgili saat 

  "ACİL KİRALANABİLİR" :)

   */

}

void main() {
  /*
  Atama Operatörleri
  */

//  = eşittir
  // sağdaki değeri soldaki değişkene aktar veya ata anlamında.
  int a = 1; // int tipinde bir değişken tanımladık ve değerini 1 verdik.
  //sağdaki 1 değerini eşittirin solundaki a değşkenine aktardık.

  a = 2; // bu işlemi beğenmedik ve a değişkenine 2 değerini atadık.

// += artı eşittir
  //a değişkenine 1 ekle ve tekrar a değişkenine aktar.
  //a değişkeni 2 yidi.  2+1=3 oldu. bu 3 değerini a ya ata.
  a = a + 1; //burda a 3 olmuştu.
  //bunu yapmanın az da olsa kısa bir yolu
  a += 1; // şöyle okunabilir. işaretlerin sağını solunu topla sola ata :)
  print(a); //üstteki işlemden sonra a yı 4 olarak çıktı alıcaz.

  //bu ifade a = a + 1; ile bu ifade a += 1; aynı işlemi yapıyor. iki ifadede de
  //değişkene 1 ekleyip değişkene atıyoruz.

// -= eksi eşittir
  int b = 10;

  //şöyle okunabilir. soldan sağı çıkar sola ata.veya değişkene ata.
  b -= 3; // bu aslında şunla aynı. b=b-3
  print(b); //7

// *= çarpı eşittir
  int c = 3;
  c *= 5; //sağı solu çarp sola ekle. veya değişkene ata. Bu ifade c=c*5 demek.
  print(c); //15

// /= bölü eşittir
  double d = 20; //double verdik çünkü kalanlı çıkabilir diye.
  //diceksiniz ben sayıları biliyorum kalanlı çıkmayacak neden illa double
  //istiyor sistem.programcılıkta bir kural vardır. yazılım yaş tahtaya basmaz.
  //temel prensipleri vardır ve bunlar hata olmasın diye konulmuştur.yarın o
  //değişkeni başka bir sayıya bölmeyeceğinin garantisi yok :)
  d /= 10; //solu sağa böl sola ata. aslında d = d/20 ile aynı şey.
  print(d); //2.0

// ~/= tilda bölü eşittir
  //arkadaşlar burda da double tanımladık mı hata alıyoruz. bilin bakalım neden.
  //şimdi bölme işlemi var double olması gerekmez mi diyoruz ama tilda işareti
  //bize tam sonuç dönecek. eee o zaman double olmaz ki. sonucumuz tam çıkacağı
  //için biz burda int değişken tanımlıyoruz.
  int e = 22;
  e ~/= 7; //solu sağa böl sola ata. AMA tam kısmını ata.
  //aslında d = d/20 ile aynı şey.
  print(e); //3

// %= mod eşittir
  int f = 21;
  f %= 5; //solu sağdaki sayıya böl kalanı sola ata.
  print(f); //1

// ??= soru işaretleri eşittir
  //arkadaşlar bu işlem bir kontrol yapıyor aslında.
  //soldaki değişken boş ise sağdaki değeri ona ata.
  //eğer doluysa zaten bir değere sahipse hiç bir şey YAPMA. Anladın mı YAPMA :)
  var g = 1; //g 1 değerine sahip
  //g ??= 9; //soldaki boş ise sağdakini ona ata. AMA boş değil. g hala bir.
  print(g); //1 // sonuç bir çıakcaktır. g değeri değişmedi.

  //şimdi değişkenimizi null bırakalım ve o şekilde deneyelim. iki şekilde null
  //yapabiliyoruz ve ikisine de bakalım.
  //birde null a sonra değer atamak için var tipiyle tanımlanmasını istiyor.
  //yine güvenlik gerekçesiyle tabi :)
  var h; //h null dur yani bir değere sahip değil.
  var i = null; //i null dur. değeri yok.
  h ??= 999; //soldaki boş ise sağdakini ona ata. Boş ve atama gerçekleşecek.
  i ??= 1000; //soldaki boş ise sağdakini ona ata. Boş ve atama gerçekleşecek.
  print(h); //999
  print(i); //1000
  /*  bu kontrolü şöyle düşünebiliriz. varsayılan değerimiz vardır. bir yerden
  değer bekliyoruzdur. o değer gelirse ne ala. yok eğer gelmez ise varsaydığımız
  değeri yapıştır gitsin.
  kafadan örnek vereyim. hala saha rezervasyon programı yapıyosunuzdur.
   24 saat öncesine kadar   para yattıysa ne ala gelen değeri işle.
   ilgili saati "ünili çocuklar" kiraladı.
  ünili çocuklar text girdisi olsun. kiralayanların lakabı :)
  yok eğer PARA YATMADIYSA varsayılan değeri yapıştır. ilgili saat
  "ACİL KİRALANABİLİR" :)
   */
}

Share This

0 comments:

Soru, Görüş, Öneri ve Eklemek İstediklerinizi Yazabilirsiniz...