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
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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
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
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.
+(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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
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
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
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.
8