Kotlin Dersleri – Kotlin Veri Tipleri (Değişkenler) – 1

Merhaba Arkadaşlar,
mobilhanem.com sitemiz için anlattığımız/yayınladığımız Kotlin Dersleri serimize bu yazımızda Kotlin Veri Tipleri ile devam edeceğiz. Bir önceki yazımızda Kotlin dilinin genel yapısından bahsetmiştik. Bu dersimizde ise bir dilin neredeyse en temel yapıları olan Veri tiplerinden Kotlin için bahsedeceğiz.

Kotlin Veri Tipleri

Java dilinde değişken tanımlaması yaparken önce değişken tipini yazıp sonrasında değişken adını yazıyorduk. Kotlin’de ise bu yapı böyle çalışmamaktadır. Kotlinde öncelikle değişkenimizin adını sonrasında ise değişken tipimizi isteğe ve duruma göre yazmaktayız (İstersek değişken tipimizi yazmayız). Değişken tipimizi yazmasakta Kotlin dili değişkene atanan değere göre tipini kendisi atıyor.

val degiskenAdi = 52
var degiskenAdi : Int = 52

Yukarıda gördüğünüz gibi önce değişken adımızı yazıyoruz. Sonra istersek direk değer atamasını eşittir (=) işareti ile hemen yapıyoruz ve değişken tipi atamasını Kotlin’e bırakıyoruz. İstersek de iki nokta üst üste koyup değişkenimizin tipini kendimiz belirtiyoruz. Peki hangisini kullanmak daha doğru derseniz , bazı durumlarda zaten değişken tipini bizim atamamız gerekecektir. İlerleyen derslerde göreceğiz. Ama böyle bir zorunluluğumuz yoksa biz değişken tipini atamamıza gerek yoktur. Kotlin doğru atamayı yapacaktır.

Kotlin Var ve Val Kullanımı

Yukarıdaki örnekte de gördüğünüz üzere tanımladığımız değişkenlerin önünde var ve val tanımlamaları bulunmaktadır. Nedir bunlar derseniz oluşturduğumuz değişkenin sonradan değişip değişmeyeceği bilgisini bu keywordler ile vermekteyiz. Yani verimiz değişken mi  yoksa değişmez  bir veri mi.

Eğer oluşturduğumuz değişken sonradan değişebilecek bir değişken ise başına var , yok bir daha değişmeyecek, başka değer atanamayacak bir değişken ise başına  val keywordu kullanırız diyebiliriz. Diyebiliriz diyoruz çünkü tam olarak öyle değil.

val keywordu javada ki final keywordu gibi çalışmaktadır. Şimdilik değişmeyecek değerler için kullanabiliriz diyebiliriz. Çünkü şuanlık object kavramı nedir, immutable object nedir, mutable object nedir kavramlarını uzağız. Ama bu konularda tecrübeli olan arkadaşlara şu şekilde anlatabiliriz. val keywordu ile tanımlanan bir referansın başka bir objeye bağlanma şansı bulunmuyor. Bu konuyu ilerleyen zamanlarda daha detaylı anlatacağız.

 

 val degisken : String = "www.mobilhanem.com"
 degisken = "Taha Kırca" //HATA

//ve ya

val degisken = "www.mobilhanem.com"
degisken = "Taha Kırca" //HATA

 

Yukarıdaki gibi val keywordu ile değişkenimizin değişmeyeceğini belirtip sonradan değiştirmeye çalışırsak Val can not be reassigned hatası ile karşılaşırız.

 

 

var keywordu kullandığımız değişkenleri ise istediğimiz kadar yeniden atama yapabilir , yani değerini değiştirebiliriz.

var sayi : Int = 5
sayi = 52

//ve ya

var sayi = 5
sayi = 52

Var ile Val arasındaki farkı şimdilik anladığımızı düşünüyorum. İlerleyen derslerimizde class nedir , object nedir ,mutable object ,immutable object nedir daha detaylı anlatacağız. Sonrasında ise var ile val’ın tam olarak nasıl çalıştığını daha iyi kavrayacağız.

Yukarıda belirttiğim gibi değişken tipini belirleyerek ve ya belirleme işlemini Kotlin’e bırakarak değişken tanımlayabiliyoruz.

Örn:

var sayi = 52
var sayi : Int = 52

Her ikiside doğru tanımlama şeklidir. Peki değişken tipini belirlemeden 52 sayısını atayarak oluşturduğumuz değişkenimize sonradan String ataması yaparsak ne olacaktır.

 

Yandaki şekilde gördüğümüz gibi hata vericektir. Gerekli olanın (beklenenin) int ancak bizim String ataması yaptığımızı söyleyerek bizi uyarıyor. Başlangıç değerimizi verdiğimizde Kotlin doğru bir şekilde değişken tipini atamaktadır. Dolayısıyla gerekli olmadığı durumlarda biz değişken tipi ataması yapmamıza gerek yoktur.

 

 

Kotlin Veri Tipleri dersimde genel olarak değişken oluşturmak , tipini belirlemek , başlangıç değeri vermek , değişkenin değerini değiştirmek ve ya değiştirmemek konularından bahsettim . Bir sonraki kotlin dersimde Veri tiplerinden (Int, String ,Double, Float, boolean ..) bahsedeceğiz. Görüşmek dileğiyle kendinize iyi bakın.

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

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

33

Taha Kırca

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

3 Yorum

Haftalık Bülten

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