- Published on
Swiftda for-in loop
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Dasturlashda looplar (takrorlash operatorlari) kod blokini qayta-qayta bajarish uchun ishlatiladi.
Masalan, bir xabarni 100 marta chiqarish kerak bo‘lsa, loopdan foydalanamiz. Bu oddiy misol — looplar yordamida bundan ancha murakkab ishlarni ham bajarish mumkin.
Swift tilida 3 xil loop mavjud:
for-inloopwhilelooprepeat...whileloop
for-in loop nima?
Swift tilida for-in loop ma’lum bir ketma-ketlik (array, range, string va boshqalar) ustida takroriy o‘tish uchun ishlatiladi.
for-in loop sintaksisi:
for val in sequence {
// operatorlar
}
Bu yerda val har bir takrorlanishda sequence ichidagi navbatdagi elementni oladi. Loop ketma-ketlikdagi oxirgi elementgacha davom etadi.
for-in loopning oqim diagrammasi

Misol:
// massivdagi elementlarga murojaat qilish
let languages = ["Swift", "Java", "Go", "JavaScript"]
for language in languages {
print(language)
}
Natija:
Swift
Java
Go
JavaScript
Ushbu misolda languages nomli array yaratilgan.
- Dastlab
languageqiymati arrayning birinchi elementi —Swiftbo‘ladi vaprintbajariladi. - Keyin
languagenavbatdagi elementga yangilanadi va loop yana bajariladi. - Bu jarayon arrayning oxirgi elementi o‘tilguncha davom etadi.
for-in loop + where sharti
Swift tilida for-in loop bilan birga where qo‘shimchasidan foydalanish mumkin. Bu loop ichida filtrlash vazifasini bajaradi: where ichidagi shart true bo‘lsa, loop bajariladi.
// arraydan Java ni olib tashlash
let languages = ["Swift", "Java", "Go", "JavaScript"]
for language in languages where language != "Java" {
print(language)
}
Natija:
Swift
Go
JavaScript
Tushuntirish:
for language in languages where language != "Java"
Agar where ichidagi shart true qaytarsa, loop bajariladi, aks holda bajarilmaydi.
Quyidagi tarzda ishlaydi:
- 1-takrorlash:
Swift→ shart true → ekranga chiqariladi - 2-takrorlash:
Java→ shart false → chiqarilmaydi - 3-takrorlash:
Go→ shart true → chiqariladi - 4-takrorlash:
JavaScript→ shart true → chiqariladi
Range bilan for loop
Range — ikki son oralig‘idagi qiymatlar ketma-ketligi.
Masalan:
var values = 1...3
Bu 1, 2, 3 qiymatlarini o‘z ichiga olgan range.
Swiftda range ustida loopni quyidagicha yozamiz:
// i = 1 dan i = 3 gacha takrorlash
for i in 1...3 {
print(i)
}
Natija:
1
2
3
Tushuntirish:
- i = 1 → chiqariladi → 2 bo‘ladi
- i = 2 → chiqariladi → 3 bo‘ladi
- i = 3 → chiqariladi → 4 bo‘ladi
- i = 4 → range tugagan → loop to‘xtaydi
stride funksiyasi bilan for loop
Agar loopni har safar ma’lum qadamlarda oshirib borishni istasak (masalan, 1, 3, 5, 7…), range emas, stride(from:to:by:) funksiyasidan foydalanamiz.
for i in stride(from: 1, to: 10, by: 2) {
print(i)
}
Natija:
1
3
5
7
9
Bu misolda:
- Loop 1 dan 10 gacha (10 kirmaydi) yuradi
- Har bir takrorlanishda i 2 taga oshiriladi