1.Değişkenler(Variables)
Kotlin’de val (value) ve var (variable) olarak iki farklı değişken tanımlama yöntemi mevcuttur.
- Val(Value), değerine ulaşılabilir ( get edilebilir). Ancak değişmez .
- Var(Variable) , hem değeri değiştirilebilir hem de değerine ulaşılabilir (get-set )
2.Sayılar (Numbers)
Kotlin’de Byte, Short, Int, Long, Float, Double olarak değişken tipleri olup bunlar farklı sayı tiplerini ifade ederler.
Type | Size (bits) | Min value | Max value |
---|---|---|---|
| 8 | -128 | 127 |
| 16 | -32768 | 32767 |
| 32 | -2,147,483,648 (-231) | 2,147,483,647 (231 - 1) |
| 64 | -9,223,372,036,854,775,808 (-263) | 9,223,372,036,854,775,807 (263 - 1) |
- Sayıların değer aralıkları yukarda yer aldığı şekildedir.
- Float ve Double ondalıklı sayıları tanımlarken kullanılır.
- Byte , Short , Int ve Long değer aralıklarına göre farklılık gösterir.
Değişkenlere değer ataması yapılırken maksimum performans için doğru değişken tipini yukarda yer alan şemayı esas alarak kullanmak önemlidir.Aksi takdirde kodlarımız çalışmayacak veya çalışsa da verimli olmayacaktır.
Tip çıkarımı yapılırken eğer değer Int ifade aralığında ise default olarak Int tanımlanır. Tanımladığınız değerler Int değer aralığından büyük ise default olarak Long tanımlanır.
Long ve Float değer ataması yapılırken sayı sonlarına “L” ve “F” işaretleri konularak bu işlem gerçekleştirilebilir.
Number değişken tanımı yapılırken "." yerine “_” kullanılabilir. Bu sayede sayının okunabilirliği kolaylaşır.
Misal :val idNumber = 2133_0062_0065_0000L
- Değişken referanslarını karşılaştırma yaparken “===” ; Değişken değer karşılaştırılması yapılırken ise “==” kullanılır.
- Yalnızca aynı değişkenlerin referans karşılaştırması “true” dönerken 2 farklı değişkenin referansları farklı olduğundan “false” dönmektedir.
Hesaplamaların daha iyi olması için Float yerine Double kullanmak daha güvenli olur. Çıkacak sonucun 15 rakamdan az olacağına emin isek Float da kullanabiliriz.
Bilimsel Sayılar( Scientific Numbers)
Float sayılarımız Bilimsel bir sayı olacaksa bu durumu "e" veya "E" rakamıyla ifade edebiliriz.
Misal:val myNum1: Float = 21E3F
val myNum2: Double = 33E4
println(myNum1)
println(myNum2)
3.Booleans
4.String
Çift tırnak içerisinde ("String") yazılan yazılar şeklinde kullanımı temsil eder.
String ifadelendirmelerinde + operatörünü kullanırken :
A. Farklı tipteki bir değişkenin önüne String bir değişken veya ifade koyarak toplarsanız, sonuç String olacaktır.
B.Farklı tipteki değişkenin sonrasına String bir değişken koyarsanız kodlamanız hata verecektir.
Misal
val value: String = "diyarbakır" + (true) + (21+33) println(value) çalışır val value: String = "diyarbakır" + (true) + (21+33) fun main() { println(value) } Output:diyarbakırtrue54 | |
Tek tırnak içerisinde genellikle harf tanımlamalarında kullanılır. Misal; unicode veya escape ifadesi char olarak tanımlanabilir.
Misal
val firstCharofName: Char = 'd'
Char ile sayı tanımlaması da yapılabilirse de Int tipine dönüştürülürken ASCII tablosundaki sayısal karşılığını elde ederiz.
Kodlama yaparken yazılan yazılarda Boşluk bırakmak , alt satıra geçmek ,satır başı yapmak gibi escape tanımlamalarını char olarak ifade edilmektedir.
Aynı zamanda Escape Character (Kaçış karakteri) tanımlamak için de Char kullanılır. Kotlinde kod içerisinde yazı yazılırken kullanılacak kodlar:
6.TYPE CONVERSION (Tip Dönüşümü) Kotlinde sadece açık tip dönüşümüne Explicit (Açık) Type izin verilir. Misal |
Type conversion için Numeric fonksiyonların listesi :
- toByte()
- toShort()
- toInt()
- toLong()
- toFloat()
- toDouble()
- toChar()
Aynı veya farklı türdeki verileri tek bir değişkende tanımlama için kullanılan bir kod yapısıdır.
a. arrayOf() tanımlaması ile aynı veya farklı türdeki değişkenler ile array oluşturabiliriz.
b. Farklı türdeki verileri bir arada tutmak için arrayOf<Any>() şeklinde tanımlama yaparak kullanırız.
c.Belli bir sayı kadar null değerli bir array tanımlamak için arrayOfNulls<Type>(size) şeklinde bir yapı kullanırız.
val doorNumbers = arrayOf(20, 21, 22, 23, 24, 25) val arrayOfNulls = arrayOfNulls<String>(5) val firstCharOfNames = arrayOf('S', 'A', 'D', 'M') val mixedArray = arrayOf<Any>(33, "Sami", 'A', true) val prayerNames = arrayOf("Hasan", "Hüseyin", "Ömer", "Ebu Bekir") | |