O‘zgaruvchilar, turlar, String shablonlari va konvertatsiya
9-sinfAndroid dasturlash4-hafta · 11-darsval va varO‘zgarmas va o‘zgaruvchan
Int, Double, Float, Boolean, Char, String
$ism, ${a + b}, toInt()
JetBrains yaratdi, Google 2017-yilda tavsiya qildi
Java’dagi 20 qator - Kotlinda 5 qator
NullPointerException xatosining oldini oladi
Bitta loyihada ikkala til birga ishlaydi
Qutini muhrlaymizmi yoki ochiq qoldiramizmi?
val pi = 3.14159
var ball = 85
val pi = 3.14159
var ball = 85
// pi = 3.14 -> XATO: Val cannot be reassigned
ball = 92 // to'g'ri: var o'zgaradi
valHar doim val dan boshlang: tasodifiy o‘zgarishlar bo‘lmaydi
varQiymat haqiqatan o‘zgaradigan bo‘lsa: ball, hisoblagich, quvvat foizi
Dastur xavfsizroq, xatolar kamroq
Qaysi qiymat uchun var kerak?
var. Qolganlari o‘zgarmaydi - val.Kotlinda hamma tur katta harf bilan boshlanadi
val yosh: Int = 15val nom: String = "Android"val shahar = "Toshkent" -> Stringval yil = 2026 -> IntKotlin qiymatga qarab turni o‘zi aniqlaydi. Tur keyin o‘zgarmaydi.
9.99Double
'7'Char - son emas, belgi
"7"String - matn
Matn ichiga qiymat joylash: $
val ism = "Sanjar"
val yosh = 16
println("Mening ismim $ism, yoshim $yosh da.")
println("Kelasi yili men ${yosh + 1} yoshga to'laman.")
val a = 7; val b = 3println("$a + $b") nima chiqaradi?
${a + b} kerak.
val matn1 = "45"
val matn2 = "12"
val son1 = matn1.toInt()
val son2 = matn2.toInt()
println(son1 + son2) // 57
println(matn1 + matn2) // 4512 - matnlar ulandi
toInt()matn -> butun son
toDouble()-> o‘nlik son
toString()-> matn
val ni o‘zgartirishVal cannot be reassigned
int emas, Int
"abc".toInt()NumberFormatException
val), yosh (var), bo‘y (Double), Boolean - bitta println bilan chiqaring.val ball = 70; ball = ball + 15 - xatoni tuzating."45" va "12" ni songa o‘tkazib, yig‘indi va ko‘paytmani chiqaring.val va var, 6 ta tur, type inference, $ shablonlari, toInt(), toDouble(), toString().
Smartfon ma’lumotlari, o‘rtacha baho, 12% QQS hisoblash.
Keyingi dars: if va when shart operatorlari.