break, continue,return
- break
- continue
- return
break
break : bırak yaa :). Bir döngüde break kullanılması, programın döngüden çıkmasına neden olur. break döngüden çık anlamına gelir. Kural: break ın içinde bulunduğu ilk döngüden çık. İç içe döngülerde break hangi döngünün içindeyse o döngü den çıkılır diğer parent/üst döngü etkilenmez.
Örnek1:
ornekfonksiyon() {
ornekblokA: { print(" -2 ");
for(..true...) { print(" -1 ");
if(..true..) {
print(" 1 ");
break ornekblokA; // blok isim vererek kullanılabilir.
//burada ornekblokA bloğundan çıkılır
print(" 2 ");
}
print(" 3 ");
// Girmez
}
print(" 4 ");
// Girmez
if(...true...) {
print(" 5 ");
// Girmez
}
print(" 6 ");
// Girmez
} // ornekblokA bloktan çıkılır
print(" 7 ");
// Girer !!! çünkü ornekfonksiyon bloğu içinde ornekblokA bloğun dışında
}
// çıktı :
-2
-1
1
7
Örnek2:
for(...true...) { print(" A ");
for(...true..) { print(" B ");
if(..true..) {
print(" C ");
break; //burada bloktan çıkılır.
//ilk baba/parent for döngüsünden çıkılır.
print(" D ");
}
print(" E ");
// Girmez
}
print(" Z "); // Girer
}
// çıktı :
A
B
C
Z
A // dikkat!
B
C
Z
A // dikkat!
B
C
Z
.....
continue
continue: aşağıya geçme ama döngüden de çıkma! dönünün başına gön.bida bida 🙂
Geçerli döngü yenilemesinde bulunduğu konumdan itibaren alttaki ifadelere geçmez ve döngünün başına geri götürür.
void main() {
outerloop: // This is the label name
for (var i = 0; i < 3; i++) {
print("Outerloop:${i}");
for (var j = 0; j < 5; j++) {
if (j == 3){
continue outerloop;
}
print("Innerloop:${j}");
}
}
}
//çıktı
Outerloop: 0
Innerloop: 0
Innerloop: 1
Innerloop: 2
Outerloop: 1
Innerloop: 0
Innerloop: 1
Innerloop: 2
Outerloop: 2
Innerloop: 0
Innerloop: 1
Innerloop: 2
return
return ifadesi bir fonksiyonu sonlandırmak için kullanılmaktadır. Döngü içerisinde de kullanılabilir.
Fakat döngüyü değil komple fonkisyonu sonlandırır.
Genelde fonksiyonlarda geri değer döndürme işlemlerinde kullanılır
void main() {
print(factorial(6));
}
factorial(number) {
if (number <= 0) {
// termination case
return 1;
} else {
return (number * factorial(number - 1));
// function invokes itself
}
}