حلقه for در کاتلین – به زبان ساده


حلقه for روی هر چیزی که «تکرارپذیر» (iterable) باشد یا خود یک «تکرارکننده» (Iterator) باشد، چرخه تکرار تعریف میکند. منظور از شیء تکرارپذیر هر چیزی است که تابع ()iterator دارد و یک شیء عرضه میکند. در این مقاله با حلقه for در کاتلین آشنا خواهیم شد.
1. In
In سادهترین حلقه for است که روی هر عنصر در یک لیست تکرار میکند:
1val fruits = listOf("Apple", "Banana", "Cherries", "Guava")
2for (fruit in fruits) {
3 println(fruit)
4}
5// Prints: Apple, Banana, Cherries, Guava
2. تکرارکننده ..
این تکرارکننده روی بازهای بین 0 (خود صفر هم شامل است) تا 5 (خودش را نیز شامل میشود) عمل میکند.
1for (number in 0..5) {
2 println(number)
3}
4// Prints: 0 through 5
3. until
حلقه for بین بازهای از 0 (شامل است) تا 5 (خودش شامل نیست) عمل میکند:
1for (number in 0 until 5) {
2 println(number)
3}
4// Prints: 0 through 4
4. downTo
به صورت کاهشی از 5 (خودش نیز شامل است) تا 0 (خودش نیز شامل است) عمل میکند:
1for (number in 5 downTo 0) {
2 println(number)
3}
4// Prints: 5 to 0
5. step
در زمان تکرار کردن روی اعداد به میزان تعیین شده در step پرش میکند.
1for (number in 0..10 step 2) {
2 println(number)
3}
4// Prints: 0, 2, 4, 6, 8, 10
5for (number in 10 downTo 0 step 2) {
6 println(number)
7}
8// Prints: 10, 8, 6, 4, 2, 0
9val fruits = listOf("Apple", "Banana", "Cherries", "Guava")
10for (index in fruits.indices step 2) {
11 println(fruits[index])
12}
13// Prints: Apple, Cherries
6. ()withIndex
روی یک لیست با اندیس آیتم جاری میچرخد:
1val fruits = listOf("Apple", "Banana", "Cherries", "Guava")
2for ((index, fruit) in fruits.withIndex()) {
3 println("$index - $fruit")
4}
5// Prints: 0 - Apple, 1 - Banana, 2 - Cherries, 3 - Guava
7. indices
از طریق اندیسها روی یک لیست میچرخد:
1val fruits = listOf("Apple", "Banana", "Cherries", "Guava")
2for (index in fruits.indices) {
3 println(fruits[index])
4}
5// Prints: Apple, Banana, Cherries, Guava
8. تکرار روی Map با استفاده از مداخل به عنوان اشیا
1val fruitMap = mapOf("A" to "Apple",
2 "B" to "Banana",
3 "C" to "Cherries",
4 "G" to "Guava")
5
6for (entry in fruitMap) {
7 println(entry.key + "-" + entry.value)
8}
9// Prints: A-Apple, B-Banana, C-Cherries, G-Guava
10
11for ((key, value) in fruitMap) {
12 println(key + "-" + value)
13}
14// Prints: A-Apple, B-Banana, C-Cherries, G-Guava
بدین ترتیب با روشهای مختلف استفاده از حلقههای تکرار در کاتلین آشنا شدیم.
اگر این مطلب برای شما مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای برنامهنویسی اندروید
- مجموعه آموزشهای برنامهنویسی
- برنامه نویسی Kotlin — مقدمهای بر برنامهنویسی اندروید با زبان کوتلین
- برنامه نویسی اندروید با کاتلین — راهنمای شروع به کار
- آشنایی با مفهوم سازنده (Constructor) در کاتلین (Kotlin) — به زبان ساده
==