Kotlinda for loopi C# kabi boshqa tillarning foreach sikliga tengdir. Bu yerda for loop iteratorni ta'minlovchi har qanday ma'lumotlar strukturasi bo'ylab o'tish uchun ishlatiladi. U Java yoki C kabi boshqa dasturlash tillarining for tsiklidan farqli ravishda ishlatiladi.
Kotlindagi for loop sintaksisi:
for (to'plamdagi element) {
// bajarish uchun kod
}
Kotlinda for loopi quyidagini takrorlash uchun ishlatiladi, chunki ularning barchasi iteratorni ta'minlaydi.
- Diapazon
- Massiv
- String
- To'plam
For loop yordamida diapazon bo'ylab takrorlash
Siz Range orqali o'tishingiz mumkin, chunki u iteratorni ta'minlaydi. Range orqali takrorlashning ko'plab usullari mavjud. Qiymatni tekshirish uchun in for siklida ishlatiladigan in operatori diapazon ichida yoki yo'q. Quyidagi dasturlar diapazonni turli yo'llar bilan bosib o'tishga misol bo'lib, diapazondagi qiymatni tekshirish uchun operatordir. Agar qiymat diapazon orasida bo'lsa, u true qiymatini qaytaradi va qiymatni chop etadi.
Qiymatlarni chop etish uchun diapazon bo'ylab takrorlang:
fun main(args: Array<String>)
{
for (i in 1..6) {
print("$i ")
}
}
3-bosqichdan foydalanib o'tish uchun diapazon bo'ylab takrorlang:
fun main(args: Array<String>)
{
for (i in 1..10 step 3) {
print("$i ")
}
}
DownTo dan foydalanmasdan yuqoridan pastga Range orqali takrorlay olmaysiz:
fun main(args: Array<String>)
{
for (i in 5..1) {
print("$i ")
}
println("Hech narsa chop etmaydi")
}
DownTo dan foydalanib, diapazonni yuqoridan pastga qarab takrorlang:
fun main(args: Array<String>)
{
for (i in 5 downTo 1) {
print("$i ")
}
}
DownTo va 3-bosqichdan foydalanib, diapazonni yuqoridan pastga qarab takrorlang:
fun main(args: Array<String>)
{
for (i in 10 downTo 1 step 3) {
print("$i ")
}
}
For loop yordamida massivni takrorlash
Massiv - bu Integer yoki String kabi bir xil ma'lumotlar turini o'z ichiga olgan ma'lumotlar strukturasi. Massivni for loop yordamida bosib o'tish mumkin, chunki u iteratorni ham ta'minlaydi. Har bir massiv boshlang'ich indeksiga ega va sukut bo'yicha u 0 ga teng. Massiv bo'ylab o'tishingiz mumkin bo'lgan quyidagilar mavjud:
- Index xususiyatidan foydalanmasdan
- Index xususiyatidan foydalanish bilan
- WithIndex Library funksiyasidan foydalanish
Indeks xususiyatidan foydalanmasdan massivni aylantiring:
fun main(args: Array<String>) {
var numbers = arrayOf(1,2,3,4,5,6,7,8,9,10)
for (num in numbers){
if(num%2 == 0){
print("$num ")
}
}
}
Indeks xususiyatidan foydalangan holda massivni aylanib o'ting:
fun main(args: Array<String>) {
var planets = arrayOf("Yer", "Mars", "Venera", "Yupiter", "Saturn")
for (i in planets.indices) {
println(planets[i])
}
}
withIndex() Kutubxona funksiyasidan foydalanib massivni aylanib o‘tish:
fun main(args: Array<String>) {
var planets = arrayOf("Yer", "Mars", "Venera", "Yupiter", "Saturn")
for ((index,value) in planets.withIndex()) {
println("$index indeksdagi element $value dir")
}
}
for loop yordamida string orqali takrorlash
Satrni for tsikli yordamida bosib o'tish mumkin, chunki u iteratorni ham ta'minlaydi. Satrni o'tkazishning quyidagi usullari mavjud:
- Index xususiyatidan foydalanmasdan
- Index xususiyatidan foydalanish bilan
- WithIndex Library funksiyasidan foydalanish
fun main(args: Array<String>) {
var name = "Geeks"
var name2 = "forGeeks"
for (alphabet in name) print("$alphabet ")
for (i in name2.indices) print(name2[i]+" ")
println(" ")
for ((index,value) in name.withIndex())
println("$index dagi element $value")
}
For loop yordamida yig'ish orqali takrorlash
Siz to'plamni for tsiklidan foydalanib aylanib o'tishingiz mumkin. To'plamlar ro'yhati, xarita va to'plamning uchta turi mavjud. Funktsiyada biz bir listOf() vaqtning o'zida turli xil ma'lumotlar turlarini o'tkazishimiz mumkin.
Quyida for loop yordamida ro'yhatni aylanib o'tish dasturi keltirilgan.
fun main(args: Array<String>) {
var collection = listOf(1,2,3,"listOf", "mapOf", "setOf")
for (element in collection) {
println(element)
}
}