Kotlin Dersleri – Kotlin Operatörler – 1

Merhaba Arkadaşlar,
mobilhanem.com sitemiz için hazırladığımız / yayınladığımız Kotlin Dersleri serisine bu dersimizde Kotlin Operatörler ile devam ediyoruz.

Operatörler bir yazılım dilinde farklı amaçlar için kullanılabilir. Bizler kotlin dilinde kullanılan operatörlerden bahsedeceğiz.

Kotlin Operatörler

1 – Basit Atama Operatörü

2 – Aritmetik Operatörler

3 – Tekli Operatörler

4 – Eşitlik ve İlişkisel Operatörler

5 – Mantıksal Operatörleri

6 – Karşılaştırma Operatörleri

Basit Atama Operatörü

Basit atama operatörleri kod geliştirmeye ilk başladığımız andan itibaren kullandığımız ve (=) ile gösterilen operatördür. Bu operatöre yazdığımız kodlarda değişkenlere değer atarken kullandığımız operatörü örnek verebiliriz. Ayrıca (+= , -= , /= , *=, %=) operatörleride değer atama işlemleri için kullanılır.

var sayi : Int = 5
var deger = "Taha"

sayi += 1 // sayi = sayi + 1 kullanmak yerine kısa şekilde sayi += 1 yazdık ve sayı ' ya atama yaptık

sayi -= 5 //sayi = sayi - 5 kullanmak yerine kısa şekilde sayi -= 5 yazdık ve sayi ' ya atama yaptık

Yukarıda gördüğünüz gibi Int türünden sayı değişkenine 5 değerini , deger değişkenine ise string Taha değerinini = atama operatörü ile atadık. Sonrasında ise += operatöri ile sayımıza 1 ekleyerek , -= operatörü ile sayımızdan 5 çıkararak atama işlemi yaptık.

Aritmetik Operatörler

Aritmetik operatörler klasik matematiksel işlemleri yapılamasını sağlayan operatörlerdir.

  • +(toplama),
  • -(çıkarma),
  • *(çarpma),
  • /(bölme)
  • %(mod alma) işlemlerinin yapılmasını sağlayan operatörlerdir.

Örnek vermek gerekirse;

val deger1 = 52
val deger2 = 6

val toplama = deger1 + deger2
val cikarma = deger1 - deger2
val carpma = deger1 * deger2
val bolme = deger1 / deger2
val mod = deger1 % deger2

println("Toplama Sonuç: " + toplama)
println("Çıkarma Sonuç: " + cikarma)
println("Çarpma Sonuc: " + carpma)
println("Bölme Sonuç: " + bolme)
println("Mod Sonuç: " + mod)

Konsol Çıktısı :
Toplama Sonuç: 58
Çıkarma Sonuç: 46
Çarpma Sonuc: 312
Bölme Sonuç: 8
Mod Sonuç: 4

Yukarıda bildiğimiz matematiksel işlemleri yaptık. Burda dikkat etmemiz gereken nokta aritmetik işlem önceliği noktasıdır. Yani aynı işlem içinde birden fazla aritmetik operatör olabilir.

Örneğin:

 val sonuc = 52-6*8/4%4+12-(24*2)  
 println("Sonuç :" + sonuc)

Konsol Çıktısı : 
Sonuç :16

Yukarıdaki işlemin sonucu 16 olacaktır. Çünkü operatörlerde işlem sırası vardır işlem sırası aşağıdaki gibidir

1- () parantez içi

2- / ve ya * (bölme ve ya çarpma)

3- % mod alma

4 – + ve ya – (toplama ve ya çıkarma)

Yukarıdaki işlemimizi işlem önceliğine göre adım adım çözelim.

52-6*8/4%4+12-48 =

  • Parantez içinden başladık => 52-6*8/4%4+12-48
  • Sonra bölme ve ya çarpma işlemleri => 52 – 6 * 2 % 4 +12 -48 => 52- 12 %4 +12 -48
  • Sonra mod işlemi => 52 – 0 – +12 – 48 (çünkü 12%4 = 0)
  • Sonra toplama ve ya çıkarma = >52 +12 – 48 => 64 -48 = 16

Tekli (Binary) Operatörler

Tekli operatörler bir değişkenin sağına veya soluna gelerek tek başına değişkenin değerini değiştirebilen operatörlerdir.

+(artı),
-(eksi),
++(1 değer arttırma),
-- (1 değer düşürme) operatörleri mevcuttur.

 

Şimdi bu operatörleri aşağıdaki örnek ile pekiştirelim;

var deger = 10 

deger = -deger //değerin önüne - koyarak -1 ile çarpılmasını sağladık 
println("Deger: " + deger)

println("------------------------------------------") 

deger = 10 // değeri tekrardan 10 a eşitledik
println("Deger: " + deger++) // önce println işlemini yaptı yani deger println ile ekrana basıldı sonra ++ işlemi ile değere +1 eklendi
println("İşlem sonrası Deger : " + deger)  //yukarıdaki print işleminden sonra +! ekleniş hali bastırıldı
    
println("------------------------------------------")
    
println("Deger: " + ++deger) //önce toplama işlemini yaptı (+1) sonra ekrana basma işlemini
println("İşlem sonrası Deger : " + deger)  //yukarıdaki değerle aynı çünkü zaten önce toplama işlemi yapılmıştı
    
println("------------------------------------------")    
    
println("Deger: " + deger--) // önce println işlemini yaptı yani deger println ile ekrana basıldı sonra -- işlemi ile değer-1 azaltıldı
println("İşlem sonrası Deger : " + deger)//yukarıdaki print işleminden sonra +1 azaltılmış hali bastırıldı 
    
println("------------------------------------------")

println("Deger: " + --deger) //önce çıkarma işlemini yaptı (-1 çıkardı) sonra ekrana basma işlemini
println("İşlem sonrası Deger : " + deger) //yukarıdaki değerle aynı çünkü zaten önce çıkarma işlemi yapılmıştır

Konsol Çıktısı:

Deger: -10
------------------------------------------
Deger: 10
İşlem sonrası Deger : 11
------------------------------------------
Deger: 12
İşlem sonrası Deger : 12
------------------------------------------
Deger: 12
İşlem sonrası Deger : 11
------------------------------------------
Deger: 10
İşlem sonrası Deger : 10

 

Yukarıda dikkat etmemiz gereken konu “deger++” ile “++degerin” farklı olması.  “++deger” önce deger’e +1 ekler ve sonrasında hangi işlem yapılacaksa onu yapar. “deger++” ise önce deger ile ilgili işlem yapılır sonrasında +1 eklenir.

Daha basit bir örnek verelim:

var deger = 10

println("Sonuc = " + ((deger++) + 5))
println(deger)   

Konsol çıktısı:
Sonuc = 15 
deger : 11

Gördüğünüz gibi önce + 5 ile toplama işlemini yapıp println ile 15 değeri ekrana basıldı sonrasında ise deger ‘e + 1 eklendi.

var deger = 10

println("Sonuc = " + ((++deger) + 5))
println(deger)   

Konsol çıktısı:
Sonuc = 16 
deger : 11

Yukarıda ise önce deger’e + 1 eklendi ve sonrasında +5 ile toplanıp ekrana bastırıldı.

Arkadaşlar Kotlin Operatörler dersimizde 6 farklı Operatörü anlatacağız. Kotlin Operatörler dersinin 1. si olan bu dersimizde 3 adet operatörü detaylıca anlattık. Bir sonraki dersimizde geri kalan operatörleri anlatacağız.

Konu hakkında sorularınızı konu altından ve ya SoruCevap sitemizden sorabilirsiniz.

Tüm Kotlin derslerimiz için tıklayınız.

19

Taha Kırca

iOS & Android & Apple Watch Developer, Mobilhanem.com yazarı, Karadeniz Uşağu, Ordu Sevdalısı

8 Yorum

  • […] Merhaba Arkadaşlar, Mobilhanem.com sitemiz üzerinden anlattığımız / yayınladığımız Kotlin Dersleri serimize bu dersimizde Kotlin Operatörler dersinin 2. dersi ile devam ediyoruz. Bir önceki dersimizde Basit Atama Operatöri , Tekil Operatörler ve Aritmetik operatörlerden bahsetmiştik. Bu dersimizde ise İlişkisel ve eşitlik Operatörü’nden , Mantıksal Operatörler’den ve Karşılaştırma Operatörü’nden bahsedeceğiz. Bir önceki dersimiz için tıklayınız. […]

  • Merhaba,

    val sayi : Int = 5
    val deger = “Taha”

    deger += 1 // deger = deger + 1 kullanmak yerine kısa şekilde deger += 1 yazdık ve deger ‘ e atama yaptık

    deger -= 5 //deger = deger – 5 kullanmak yerine kısa şekilde deger -= 5 yazdık ve deger ‘ e atama yaptık

    Bu kodda “deger” değişkenine “Taha” atadınız. Ardından ” deger +=1 ” diyerek deger değişkenini 1 arttırmış olmuyor muyuz? deger değikenine “Taha” atanmış, burada bu işlem mantıklı değil. (Yanlış yorumluyor olabilirim.)

    Şöyle yapılsa doğru olmayacak mıydı?

    val sayi=5

    sayı +=1

    Böylelikle 5 bir artacak 6 olacak. Bu tamam ama “Taha”yı 1 arttırmak ne demek?

    Teşekkürler.

  • Merhaba,

    Tekli (Binary) Operatörler

    Tekli operatörler bir değişkenin sağına veya soluna gelerek tek başına değişkenin değerini değiştirebilen operatörlerdir.

    +(artı),
    -(eksi), ————————————————>>>> 1 (eksi) “-” eksik olmuş. <<<<————————-
    ++(1 değer arttırma),
    –(1 değer düşürme) operatörleri mevcuttur.

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?