खोज…
परिचय
रेंज अभिव्यक्तियाँ रेंजो फ़ंक्शंस के साथ बनाई जाती हैं जिनके पास ऑपरेटर रूप होता है .. जो कि इन-इन द्वारा पूरक होता है। रेंज को किसी भी तुलनीय प्रकार के लिए परिभाषित किया गया है, लेकिन अभिन्न आदिम प्रकारों के लिए इसका एक अनुकूलित कार्यान्वयन है
इंटीग्रल टाइप रेंज
इंटीग्रल टाइप रेंज (IntRange, LongRange, CharRange) में एक अतिरिक्त विशेषता है: वे इससे अधिक पुनरावृत्त हो सकते हैं। संकलक अतिरिक्त ओवरहेड के बिना जावा के अनुक्रमित-लूप के अनुरूप इसे परिवर्तित करने का ध्यान रखता है
for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing
downTo () फ़ंक्शन
यदि आप रिवर्स क्रम में संख्याओं पर पुनरावृति करना चाहते हैं? यह आसान है। आप मानक पुस्तकालय में परिभाषित डाउनटो () फ़ंक्शन का उपयोग कर सकते हैं
for (i in 4 downTo 1) print(i) // prints "4321"
समारोह की ओर कदम बढ़ाएं
क्या मनमानी कदम के साथ संख्याओं पर पुनरावृति करना संभव है, 1 के बराबर नहीं? ज़रूर, चरण () फ़ंक्शन आपकी सहायता करेगा
for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"
कार्य करने तक
एक सीमा बनाने के लिए जिसमें इसका अंतिम तत्व शामिल नहीं है, आप फ़ंक्शन तक का उपयोग कर सकते हैं:
for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}