Kotlin ma’lumot tiplari


ULASHISH

Kotlin ma’lumot tiplari

Kotlin tilida o‘zgaruvchining tipi uning qiymatiga qarab aniqlanadi:

Misol

val myNum = 5             // Int
val myDoubleNum = 5.99    // Double
val myLetter = 'D'        // Char
val myBoolean = true      // Boolean
val myText = "Hello"      // String
O‘zingiz sinab ko‘ring »

Biroq, oldingi bobdan bilganingizdek, xohlasangiz tipni aniq ko‘rsatishingiz mumkin:

Misol

val myNum: Int = 5                // Int
val myDoubleNum: Double = 5.99    // Double
val myLetter: Char = 'D'          // Char
val myBoolean: Boolean = true     // Boolean
val myText: String = "Hello"      // String
O‘zingiz sinab ko‘ring »

Ba’zan tipni ko‘rsatishingizga to‘g‘ri keladi, ko‘pincha esa bunga hojat bo‘lmaydi. Har holda, turli tiplar nimani ifodalashini bilish foydali.

Tipni qachon ko‘rsatish kerakligi haqida keyinroq batafsil bilib olasiz.

Ma’lumot tiplari turli guruhlarga bo‘linadi:

  • Sonlar
  • Belgilar
  • Boolean qiymatlar
  • Stringlar
  • Massivlar

Sonlar

Son tiplari ikki guruhga bo‘linadi:

Butun son tiplari musbat yoki manfiy butun sonlarni (masalan, 123 yoki -456) kasr qismisiz saqlaydi. Bularga Byte, Short, Int va Long tiplari kiradi.

Suzuvchi nuqtali tiplar bir yoki bir nechta o‘nli raqamdan iborat kasr qismga ega sonlarni ifodalaydi. Ular ikki xil: Float va Double.

Agar sonli o‘zgaruvchining tipini ko‘rsatmasangiz, u ko‘pincha butun sonlar uchun Int, suzuvchi nuqtali sonlar uchun esa Double sifatida aniqlanadi.


Butun son tiplari

Byte

Byte ma’lumot tipi -128 dan 127 gacha bo‘lgan butun sonlarni saqlay oladi. Qiymat -128 va 127 oralig‘ida bo‘lishiga ishonchingiz komil bo‘lsa, xotirani tejash uchun undan Int yoki boshqa butun son tiplari o‘rniga foydalanish mumkin:

Misol

val myNum: Byte = 100
println(myNum)
O‘zingiz sinab ko‘ring »

Short

Short ma’lumot tipi -32768 dan 32767 gacha bo‘lgan butun sonlarni saqlay oladi:

Misol

val myNum: Short = 5000
println(myNum)
O‘zingiz sinab ko‘ring »

Int

Int ma’lumot tipi -2147483648 dan 2147483647 gacha bo‘lgan butun sonlarni saqlay oladi:

Misol

val myNum: Int = 100000
println(myNum)
O‘zingiz sinab ko‘ring »

Long

Long ma’lumot tipi -9223372036854775808 dan 9223372036854775807 gacha bo‘lgan butun sonlarni saqlay oladi. U qiymatni saqlash uchun Int yetarli bo‘lmaganda ishlatiladi. Ixtiyoriy ravishda qiymat oxiriga "L" qo‘yishingiz mumkin:

Misol

val myNum: Long = 15000000000L
println(myNum)
O‘zingiz sinab ko‘ring »

Int va Long o‘rtasidagi farq

Butun son 2147483647 dan oshmaguncha Int hisoblanadi. Agar undan oshsa, Long sifatida aniqlanadi:

Misol

val myNum1 = 2147483647  // Int
val myNum2 = 2147483648  // Long


Suzuvchi nuqtali tiplar

Suzuvchi nuqtali tiplar kasr qismli sonlarni ifodalaydi, masalan, 9.99 yoki 3.14515.

Float va Double ma’lumot tiplari kasr sonlarni saqlay oladi:

Float misoli

val myNum: Float = 5.75F
println(myNum)
O‘zingiz sinab ko‘ring »

Double misoli

val myNum: Double = 19.99
println(myNum)
O‘zingiz sinab ko‘ring »

Float yoki Double — qaysi biridan foydalanish kerak?

Suzuvchi nuqtali qiymatning aniqligi qiymatda o‘nli nuqtadan keyin nechta raqam bo‘lishi mumkinligini bildiradi. Float ning aniqligi atigi olti yoki yetti o‘nli raqamga teng, Double o‘zgaruvchilarining aniqligi esa taxminan 15 raqamni tashkil qiladi. Shu sababli ko‘pchilik hisob-kitoblar uchun Double dan foydalanish xavfsizroq.

Shuningdek, Float tipidagi qiymat oxiriga "F" qo‘yish kerakligini unutmang.

Ilmiy ko‘rinishdagi sonlar

Suzuvchi nuqtali son 10 ning darajasini bildiruvchi "e" yoki "E" harfi bilan ilmiy ko‘rinishda ham yozilishi mumkin:

Misol

val myNum1: Float = 35E3F
val myNum2: Double = 12E4
println(myNum1)
println(myNum2)
O‘zingiz sinab ko‘ring »

Boolean qiymatlar

Boolean ma’lumot tipi faqat true yoki false qiymatlarini qabul qila oladi:

Misol

val isKotlinFun: Boolean = true
val isFishTasty: Boolean = false
println(isKotlinFun)   // Outputs true
println(isFishTasty)   // Outputs false 
O‘zingiz sinab ko‘ring »

Boolean qiymatlar asosan shartlarni tekshirishda ishlatiladi, bu haqda keyingi boblarda batafsil bilib olasiz.


Belgilar

Char ma’lumot tipi bitta belgini saqlash uchun ishlatiladi. Char qiymati 'A' yoki 'c' kabi yakka tirnoqlar ichida yozilishi kerak:

Misol

val myGrade: Char = 'B'
println(myGrade)
O‘zingiz sinab ko‘ring »

Java tilidan farqli o‘laroq, ma’lum belgilarni ko‘rsatish uchun ASCII qiymatlaridan foydalana olmaysiz. 66 qiymati Java tilida "B" ni chiqaradi, Kotlin tilida esa xatoga olib keladi:

Misol

val myLetter: Char = 66
println(myLetter) // Error

Stringlar

String ma’lumot tipi belgilar ketma-ketligini (matnni) saqlash uchun ishlatiladi. String qiymatlari qo‘sh tirnoqlar ichida yozilishi kerak:

Misol

val myText: String = "Hello World"
println(myText)
O‘zingiz sinab ko‘ring »

Stringlar haqida Stringlar bobida batafsil bilib olasiz.


Massivlar

Massivlar har bir qiymat uchun alohida o‘zgaruvchi e’lon qilish o‘rniga bir nechta qiymatni bitta o‘zgaruvchida saqlash uchun ishlatiladi.

Massivlar haqida Massivlar bobida batafsil bilib olasiz.


Tip o‘zgartirish

Tip o‘zgartirish — bir ma’lumot tipidagi qiymatni boshqa tipga aylantirish.

Kotlin tilida sonli tiplarni o‘zgartirish Java tilidagidan farq qiladi. Masalan, quyidagi kod yordamida Int tipini Long tipiga o‘zgartirib bo‘lmaydi:

Misol

val x: Int = 5
val y: Long = x
println(y) // Error: Type mismatch 
O‘zingiz sinab ko‘ring »

Sonli ma’lumot tipini boshqa tipga o‘zgartirish uchun quyidagi funksiyalardan birini ishlatishingiz kerak: toByte(), toShort(), toInt(), toLong(), toFloat(), toDouble() yoki toChar():

Misol

val x: Int = 5
val y: Long = x.toLong()
println(y)
O‘zingiz sinab ko‘ring »


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!