7- Dart İnt Özellikleri ve Metodları

Dart İnt Özellikleri ve Metodları Örneklerini DartPad uygulamasında hiç bir şey yüklemeden kopyala yapıştır ile web sayfası üzerinden çalıştırabilirsiniz. Bunun için google da DartPad uygulamasını aratabilirsiniz veya şu an için güncel linki https://dartpad.dev/

İsteyenler yazımızın içeriğini video olarak izleyebilirler. Aşağıda resimli bir şekilde yazdım.

Dart isEven ve isOdd Özellikleri

isEven bir sayının çift olup olmadığına bakar ve çift ise bize true değerini döndürür.

isOdd bir sayının tek olup olmadığına bakar ve tek ise bize true değerini döndürür.

void main() {
    
  int sayi = 26;
  
  if (sayi.isEven == true){
    
    print ("sayimiz : $sayi ve çifttir");
  }
   if (sayi.isOdd == true){
    
    print ("sayimiz : $sayi ve tektir");
  }

  }

//Sonuç: Burada sayımız 26 olduğu için birinci if bloğumuz çalıaşacak ve çifttir sonucu dönecektir.

runtimeType Özelliği

runtimeType : Bize çalışma anında değişkenin tipini döndürür.

void main() {

var sayi= 5;
print(sayi.runtimeType); 

}

//SONUÇ: int olarak değişkenimizin tipini yazdıracaktır.

void main() {

var sayi= "5";
print(sayi.runtimeType); 

}

//SONUÇ: String olarak değişkenimizin tipini yazdıracaktır. Burada ikisi de sayı ancak son örnekte tırnaklar içine alındığı için artık o bir String ifade olmuştur.

sign Özelliği

sign : Değişkene atadığımız sayı 0 ise sonuç sıfır döner, sıfırdan büyükse sonuç +1 ve sıfırdan küçükse -1 döner.

void main() {

var sayi= 5;
print(sayi.sign);
 
 }

//SONUÇ: sayi değişkenine atadığımız değer 5 olduğu için ve sıfırdan büyük olduğu için +1 dönecektir.

isNaN Özelliği

isNaN: Tanımsız mı? Belirsiz mi? anlamlarına gelir. Bir sayının sıfıra bölümü tanımsızdır. Kodumuz beşin sıfıra bölümünü infinity (sonsuz) olarak tanımlamış. Sıfırın sıfıra bölümü belirsizdir. Kodumuz sıfırın sıfıra bölümünü ise NaN tanımlamıştır. Bu tür işlemlerde programımız hata vermemesi için bir kontrolden geçirebiliriz. (biraz kafa karıştıran bir konu, daha iyi anlatabilecek varsa aşağıya yorumlara yazsın)

void main() {
double sayi= 5/0;
double sayi2= 4/0;
 
  print (sayi); //Infinity, sonsuz
  
double sonuc = sayi/sayi2;
   
  print(sonuc.isNaN); // true,
  
  print(sonuc); // NaN, sayi değil, belirsiz
  
  if (sonuc.isNaN) {sonuc=5; // Eğer belirsizlik varsa sonuca 5 ata
                  
         print(sonuc); // 5
         print(sonuc.isNaN); // false, artık belirsiz değil 
                  
                  }
  
  int sayi3 = 0;
  int sayi4 = 0;
  double sonuc2 = sayi3/sayi4;
  
    print (sonuc2); //NaN sonuç belirsiz
  }

Dart isNegative Özelliği

isNegative: Değişkenimize atadığımız sayı negatif ise true, pozitif ise false döner, sayının negatif mi ya da pozitif mi olduğunu sorgular.

void main() {
  
  int sayi = -5;
   print (sayi.isNegative); 
  //sonuç true döner, sayımız negatif
  
  int sayi2 = 5;
   print (sayi2.isNegative);
  //sonuç false döner, sayımız pozitif
 
   }

Dart abs() Metodu

abs(): Bir sayının mutlak değerini verir. Örneğin sayımız -50 gibi bir değer ise onu 50 olarak döndürecektir.

void main() {

  
  int deger = -50;
  print(deger.abs()); //sonuç 50 çıkacaktır.
  
  print(deger < 0 ? -deger : deger); // bu ifadenin metodudur.
 
  print (deger.abs()); // sonuç 50 çıkacaktır.
 
  }

Dart ceil() ve ceilToDouble Metodu

ceil() ve ceilToDouble : Ondalıklı bir sayıyı yukarıdaki en yakın tam sayıya yuvarlar

void main() {

  double deger = 50.28;
  print(deger.ceil()); 

//sonuç: 51 olarak geri döner
  
  }

Dart clamp() Metodu

clamp() : Metodu uygulayacağımız verinin belli bir aralıkta tutulmasını sağlar. Örneğin bizim gelen bir verimiz var ve 1 ile 10 arasında bir değer olmasını istiyoruz ama bize gelen değer bu aralığın dışında, ozaman bu metodu kullanabiliriz.

Örneğimizi çeşitlendirirsek; Diyelim ki bize elektronik devreden bir veri geliyor ve bu değerler -20 ile 50 arasında olsun. Biz ise bu veriler ile başka bir elektronik devreye veri göndereceğiz ve 1 ile 10 arasında olacak. Bu şartlarda bize gelen veri 1 ile 10 arasında gelirse sorun yok aynen bizde göndeririz ancak gelen veri 25 oldu diyelim biz orada oooppp dur bakalım sen en fazla 10 olabilirsin der verimizi 10 olarak göndeririz.

void main() {

  int minDeger = 1;
  int maxDeger2 = 10;
 
  int gelenDeger=12;
  
  print(gelenDeger.clamp(minDeger , maxDeger2) );
  
  }

Sonuç : 10 olur. Çünkü bizim maxDeger=10 , eğer gelenDeger=6 olsaydı, sınırlarımız dahilinde olduğu için 6 yı yazacaktı.

Dart compareTo() Metodu

compareTo() : Karşılaştırma yapar ve karaşılaştırılacak olan veri değerine göre -1, 0 ve 1 değerini döndürür.

void main() {
 
int elimizdekiVeri = 5;
int gelenVeri= 10;
int sonuc= gelenVeri.compareTo(elimizdekiVeri);
  
print(sonuc);
  
  }

//Sonuç: 1 dönecektir. gelenVeri=5 olsaydı 0 dönecekti veya gelenVeri=4 olsaydı -1 dönecekti.

print(1.compareTo(2)); // => -1
print(2.compareTo(1)); // => 1
print(1.compareTo(1)); // => 0

Dart floor() Metodu

floor() : Aşağı doğru en yakın tam sayıya yuvarlar

void main() {

  double elimizdekiVeri = 5.8;
 
  print(elimizdekiVeri.floor());
  
  //Sonuç: 5 olacaktır. Aşağıdaki en yakın tam sayı
 
  }

Dart gcd() Metodu

gcd() : iki tam sayının en büyük ortak bölenini bulur.

void main() {

  int sayi1 = 122;
  int sayi2 = 244;
    
  int sonuc= sayi1.gcd(sayi2);
   print(sonuc);
  
  int sonuc2 = sayi2.gcd(sayi1);
   print(sonuc2);
  
  }

Sonuç : 122 vermiş olduğumuz iki tam sayının en büyük ortak böleni 122 dir. Farkındaysanız birde ters yazdık sonuç değişmedi yine aynı çıktı, sebebi ortak bölenlerinde değişen bir durum yok.

Dart modPow() Metodu

modPow() : Mod Almak: Bir sayının bölünen sayıdan kalanıdır. Örneğin 15 in 2 ye bölümünden kalan 1 dir. Buda demek oluyorki 15 in mod2 si 1dir. Bu metodumuz ise bir sayının üssüne göre modunu alır. Eğer üssünü 1 verirsek sadece modunu almış olur. Bir sayının 1 üssü yine kendisidir.

void main() {

  int us = 1; //üssüne bir dedik ki sadece modunu alalım
  int mod = 2; //ikiye göre modunu alıcaz, tekmi çift mi uygulaması yapılabilir.
  int sayimiz=15;
    
  int sonuc= sayimiz.modPow(us,mod);
  print(sonuc);
  
  //sonuç bir, üssüne bir dediğimiz için 15^1=15 oldu. 15%2=1 olur. 
  //onbeş üssü bir yine onbeş ve onbeşin ikiye bölümünden kalan bir.
  //sayımız tek oldu.
 
  }

Dart remainder() Metodu

remainder() :Bir sayının bölümünden kalanı verecektir.

void main() {

  int sayimiz = 100; 
  int bolen = 94; 
    
  int sonuc= sayimiz.remainder(bolen);
  print(sonuc);
 
 //Sonuç: 6 olacaktır.
  }

Dart round() Metodu

round() :Bir sayıyı en yakın tam sayıya yuvarlar.

void main() {

  double sayimiz = 1.68; 
    
  int sonuc= sayimiz.round();
  print(sonuc);
 
 //Sonuç: 2 olacaktır. 1,6 yı bir yukarı tam sayı olan 2 ye yuvarladı.
  }

Dart toInt() Metodu

toInt() :Tip dönüşümü yapar. Double olan küsüratlı bir sayının ondalıklı kısımlarını atar, int tipinde geri kalan tam sayıyı döndürür.

void main() {

  double sayimiz = 1.68; 
    
  int sonuc= sayimiz.toInt();
  print(sonuc);
 
 //Sonuç: 1 olacaktır. 1,68 in küsüratını attı.
  }

Dart toDouble() Metodu

toDouble() : Tip dönüşümü yapar. Bir sayıyı double ye çevirir, ondalıklı hale getirir.

void main() {

  int sayi1 = 19; 
  double sayi2=3.5;
 
print((sayi1*sayi2).toDouble());

 //Souç 66,5 olacaktır. 
}

Dart toString() Metodu

toString() : Tip dönüşümü yapar. Bir sayıyı String e çevirir.

void main() {

  int sayi1 = 19; 
  int sayi2=3;
  String sonuc= (sayi1*sayi2).toString();
  
  print ("sayımız " + sonuc  );
  
}

2 thoughts on “7- Dart İnt Özellikleri ve Metodları”

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir