D Language
लूप्स
खोज…
वाक्य - विन्यास
- for (<initializer>; <loop condition>; <loop statement>) {<स्टेटमेंट्स>}
- जबकि (<हालत>) {<कथन>}
- do {<स्टेटमेंट्स>} जबकि (<कंडीशन>);
- foreach (<el>, <collection>)
- foreach_reverse (<el>, <collection>)
टिप्पणियों
- डी में प्रोग्रामिंग के
for
लूप, विनिर्देश -
while
डी , प्रोग्रामिंग में पाश विनिर्देशन - डी , प्रोग्रामिंग में लूप
do while
, विनिर्देशन -
foreach
में डी में प्रोग्रामिंग , opApply , विनिर्देश
पाश के लिए
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
for (int i = 0; i < arr.length; i++)
{
arr[i] *= 2;
}
writeln(arr); // [2, 6, 8]
}
घुमाव के दौरान
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
int i = 0;
while (i < arr.length)
{
arr[i++] *= 2;
}
writeln(arr); // [2, 6, 8]
}
जबकि ऐसा
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
int i = 0;
assert(arr.length > 0, "Array must contain at least one element");
do
{
arr[i++] *= 2;
} while (i < arr.length);
writeln(arr); // [2, 6, 8]
}
प्रत्येक के लिए
Foreach संग्रह को कम त्रुटि-रहित और बेहतर पठनीय तरीका देता है। यदि हम सीधे पुनरावृत्त तत्व को संशोधित करना चाहते हैं, तो विशेषता ref
का उपयोग किया जा सकता है।
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
foreach (ref el; arr)
{
el *= 2;
}
writeln(arr); // [2, 6, 8]
}
पुनरावृत्ति के सूचकांक तक भी पहुँचा जा सकता है:
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
foreach (i, el; arr)
{
arr[i] = el * 2;
}
writeln(arr); // [2, 6, 8]
}
रिवर्स ऑर्डर में परिवर्तन संभव है:
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
int i = 0;
foreach_reverse (ref el; arr)
{
el += i++; // 4 is incremented by 0, 3 by 1, and 1 by 2
}
writeln(arr); // [3, 4, 4]
}
तोड़ें, जारी रखें और लेबल करें
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4, 5];
foreach (i, el; arr)
{
if (i == 0)
continue; // continue with the next iteration
arr[i] *= 2;
if (i == 2)
break; // stop the loop iteration
}
writeln(arr); // [1, 6, 8, 5]
}
नेस्टेड लूप के भीतर लेबल को break
या continue
लिए भी इस्तेमाल किया जा सकता है।
void main()
{
import std.stdio : writeln;
int[] arr = [1, 3, 4];
outer: foreach (j; 0..10) // iterates with j=0 and j=1
foreach (i, el; arr)
{
arr[i] *= 2;
if (j == 1)
break outer; // stop the loop iteration
}
writeln(arr); // [4, 6, 8] (only 1 reaches the second iteration)
}
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow