2013-07-22 7 views
26
में 2 से पाश के लिए

मैं कैसे पाश 2 से यह करने के लिए जावा में भी वृद्धि करते समकक्ष के रूप में:वृद्धि स्काला

for (int i = 0; i < max; i+=2) 
अभी

स्काला में मेरे पास है:

for (a <- 0 to max) 

एक तथ्य के लिए max हमेशा भी रहेगा। मुझे नहीं पता कि प्रत्येक लूप में काउंटर को 2 में कैसे बढ़ाया जाए।

उत्तर

51

प्रयास करें for (a <- 0 until max by 2)

+1

'to' का उपयोग करते हुए' max' शामिल होंगे। – Brian

+0

@ ब्रायन, संपादित। – tkroman

+0

'to' का उपयोग करने में अधिकतम शामिल होगा जो प्रश्न पूछता नहीं है। – Brian

12

नोट to और until के बीच का अंतर। सख्त i < max के साथ आप तब तक चाहेंगे।

val max = 10 

scala> for(i <- 0 until max by 2) 
    | println(i) 
0 
2 
4 
6 
8 

scala> for(i <- 0 to max by 2) 
    | println(i) 
0 
2 
4 
6 
8 
10 
1

हैरानगी आसान:

scala> for (a <- 0 until 10 by 2) yield a 
// Vector(0, 2, 4, 6, 8, 10) 
1

निश्चित रूप से (0 अधिकतम तक द्वारा 2) foreach {...}

0

पर्याप्त होगा इस तरह से आप के लिए स्केला का उपयोग कर सकते जावा की तरह लूप।

object Example extends App { 
    for(i <-0 to 20 by 2) { 
     println("Value of i = "+ i) 
    } 
} 

आउटपुट

Value of i = 0 
Value of i = 2 
Value of i = 4 
Value of i = 6 
Value of i = 8 
Value of i = 10 
Value of i = 12 
Value of i = 14 
Value of i = 16 
Value of i = 18 
Value of i = 20