Belgilar massivi satr deyiladi. Kotlin satrlari asosan Java satrlariga o'xshaydi, lekin ba'zi yangi qo'shilgan funksiyalarga ega. Kotlin satrlari ham tabiatan o'zgarmasdir, ya'ni biz String elementlarini va uzunligini o'zgartira olmaymiz. Kotlindagi String klassi quyidagicha aniqlanadi:
class String : Comparable<String>, CharSequence
Kotlinda satrni e'lon qilish uchun biz qo'sh tirnoq (" ") dan foydalanishimiz kerak, Stringlarni aniqlash uchun bitta tirnoqqa ruxsat berilmaydi.
Sintaksis:
var variable_name = "Salom, UzbekDevs"
yoki
variable_name : String = "Uzbek Developers"
Bo'sh String yaratish:
Kotlinda bo'sh satr yaratish uchun String sinfining namunasini yaratishimiz kerak.
variable_name = String()
String elementlari va shablonlari
String elementi satrda mavjud bo'lgan belgi, raqam yoki boshqa belgilar String elementi deb ataladi. Biz string[index] yordamida satr elementiga osongina kira olamiz. Elementlar 0 dan indeksgacha (string.length – 1) satrda saqlanadi. Kotlinda string elementlariga kirishning uchta usuli mavjud
- Indeksdan foydalanish: Belgilangan indeksdagi belgini qaytaradi.
- Get funktsiyasidan foydalanish: Funktsiyani olish uchun argument sifatida berilgan ko'rsatilgan indeksdagi belgini qaytaradi.
- String ustida takrorlash: Stringdagi belgilarga kirish uchun tsikllardan foydalanish.
Satr elementlariga kirish uchun Kotlin dasturi
fun main(args: Array<String>){
var str = "Salom"
println(str[0])
println(str[1])
println(str[2])
println(str[3])
println(str[4])
var str2 = "Uzbekdevs"
for(i in str2.indices){
print(str2[i]+" ")
}
}
String shablon
String shablon ifodasi baholanadigan va uning natijasi satrga qaytariladigan kod qismidir. Ikkala satr turi ham (qochib ketgan va xom satr) shablon ifodalarini o'z ichiga oladi. String shablonlari dollar belgisi bilan boshlanadi, u oʻzgaruvchi nomidan yoki jingalak qavslardagi ixtiyoriy ifodadan iborat.
fun main(args: Array<String>) {
var n = 10
println("$n ning qiymati 10 ga teng.")
val str = "Uzbekdevs"
println("$str uzunligi ${str.length} ga teng bo'lgan satr.")
}
Stringdagi ba'zi muhim xususiyatlar va funktsiyalar:
Length: String uzunligini qaytaradi.
var s = "string"
println(s.Length)
get(index): Belgini o'sha indeksda qaytaradi.
s.get(3) // Chiqish: - i
subSequence(start, end): boshidan boshlanadigan va oxirida tugaydigan, lekin oxiri bundan mustasno, pastki qatorni qaytaradi.
s.subSequence(1, 4) // Chiqish: - tri
str.compareTo(string): str == string bo'lsa, 0 ni qaytaradi.
Yuqoridagi xususiyatlar va funktsiyalardan foydalanish uchun Kotlin dasturi
fun main(args: Array<String>) {
var g = "Salom yosh dasturchilar"
var e = "Uzbekdevs"
println(g.length)
println(g.get(4))
println(g.subSequence(0, 5))
println(g.compareTo(e))
}
Satr harflari
Kotlinda ikki xil satr literallari mavjud:
- Qochilgan string
- Raw String
Escaped String
Escaped string qoʻsh tirnoq (“….”) bilan eʼlon qilinadi va unda /n, /t va boshqalar kabi qochish belgilari boʻlishi mumkin. Escaped string
Kotlin dasturi
fun main(args: Array<String>) {
val str = "Xush \n kelibsiz \n Uzbekdevs saytiga!"
println(str)
}
Raw String – Ko‘p qatorli string
Raw string uch qo‘shtirnoq ichida (“””….”””) joylashtirilgan va unda qochish belgilari yo‘q. U satrni bir nechta satrlarga yozish imkoniyatini beradi, shuning uchun u ko'p qatorli satr deb ham ataladi.
Kotlin xom string dasturi
fun main(args: Array<String>) {
var str = """Salom
|yosh
|dasturchilar
|Xush kelibsiz Uzbekdevs saytiga1
""".trimMargin()
println(str)
}
Qochish belgilari - Ba'zi qochish belgilari:
- \” : qoʻsh tirnoq uchun
- \r : vagonni qaytarish uchun
- \n : yangi qator uchun
- \' : bitta tirnoq uchun
- \\: teskari chiziq uchun
- \t: yorliq uchun
- \b: backspace uchun
String tengligi
Kotlin ma'lum bir turdagi misollarni ikki xil usulda taqqoslashning qo'shimcha xususiyatini taqdim etadi. Bu xususiyat Kotlinni boshqa dasturlash tillaridan farq qiladi.Tenglikning ikki turi -
- Strukturaviy tenglik
- Referensial tenglik
Strukturaviy tenglik
Strukturaviy tenglik == operatori va uning teskari != operatori orqali tekshiriladi. Odatiy bo'lib, x==y ni o'z ichiga olgan ibora bu tur uchun equals() funksiyasining chaqiruviga tarjima qilinadi. Yo'naltiruvchi tenglik - Kotlindagi mos yozuvlar tengligi === operatori va uning teskari !== operatori orqali tekshiriladi. Bu tenglik, agar turning ikkala nusxasi ham xotirada bir xil joyni ko'rsatsagina, rostni qaytaradi. Ishlash vaqtida ibtidoiy turga aylantirilgan turlarda foydalanilganda === tekshiruvi == tekshiruviga va !== tekshiruvi != tekshiruviga aylantiriladi.
Strukturaviy va mos yozuvlar tengligini namoyish qilish uchun Kotlin dasturi
fun main(args: Array<String>) {
var x = "GeeksForGeeks"
var y = "GeeksForGeeks"
var z = "Geeks"
println(x===y) // true ,
println(x==z) //false
println(x===z) //false
}