Java Döngü İfadeleri
Bir parça kodu bazen birkaç defa çalıştırmamız gereken durumlar olabilir. Bu durumlar için çözüm yolumuz döngüler dediğimiz yöntemlerdir.
Java üç tane olmak üzere kullanımı son derece rahat ve kolay döngü mekanizması sunar.
- While
- Do…while
- For
Java 5 sonrasında ise daha çok Array kullanımında gördüğümüz gelişmiş for döngüsünü sunulmuştur.
While Döngüsü
While döngüsü bir görevi birden fazla tekrarlanmasına olanak veren bir kontrol yapısıdır.
Syntax
1
2
3
4
|
while(Boolean_expression)
{
//Statements
}
|
Çalıştırıldığı zaman boolean değer doğru olduğu sürece while döngüsü içerisinde yer alan kod parçası çalıştırılmaya devam edecektir.
Burada ki anahtar nokta while döngüsü hiçbir zaman çalıştırılmaya bilir. Boolean değer kontrol edilip sonuç false olarak geri döndüğü zaman, döngü gövdesi atlanacaktır ve while döngüsünden sonra yer alan ilk statement çalıştırılacaktır.
1
2
3
4
5
6
7
8
9
10
11
12
|
public class Test {
public static void main(String args[]) {
int x = 10;
while( x < 20 ) {
System.out.print(“value of x : “ + x );
x++;
System.out.print(“\n”);
}
}
}
|
Bu kod parçası şu çıktıyı verecektir.
1
2
3
4
5
6
7
8
9
10
|
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
|
do…while
do..while döngüsü, while döngüsüne oldukça benzer bir yapıya sahiptir. Tek farkı do..while döngüsü kodun en az bir defa çalıştırılacağını garanti eder.
Syntax
1
2
3
4
|
do
{
//Statements
}while(Boolean_expression);
|
Burada boolean ifadenin döngünün sonunda yer aldığına dikkat ediniz. Dolayısıyla döngü içerisinde yer alan kod parçası boolean ifade test edilmeden önce bir kere çalıştırılmış olacaktır.
Eğer boolean ifade true değer döndürürse, döngü tekrardan do kısmına geri dönecek ve döngü içerisinde yer alan kod parçası tekrar işleme konulacaktır. Bu süreç boolean değer false olana kadar devam edecektir.
1
2
3
4
5
6
7
8
9
10
11
12
|
public class Test {
public static void main(String args[]){
int x = 10;
do{
System.out.print(“value of x : “ + x );
x++;
System.out.print(“\n”);
}while( x < 20 );
}
}
|
1
2
3
4
5
6
7
8
9
10
|
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
|
For döngüsü
Bir for döngüsüne baktığınız zaman, daha etkili bir şekilde döngü oluşturma mekanizmasının ortada olduğunu fark edersiniz. Bir for döngüsünü döngünün kaç defa tekrar edeceğini bildiğiniz zaman kullanımı avantajlı bir yapı olarak değerlendirilebilir.
Syntax
1
2
3
4
|
for(initialization; Boolean_expression; update)
{
//Statements
}
|
For döngüsünün söz dizimini inceleyelim.
- İnitialization olarak isimlendirilen kısım; ilk olarak çalıştırılır ve sadece bir defa çalıştırılır. Bu adım döngünün başlangıç değerini sağlayacağınız kısımdır. Burada herhangi bir statement kullanmak yasaktır.
- Boolean expression olarak isimlendirilen kısım; döngünün mantık kontrol noktasıdır. Eğer bu kısım doğru ise döngü çalıştırılacaktır. Eğer bu kısım yanlış ise döngü ya hiç çalışmayacak ya da artık çalışmaya devam etmeyecektir ve for döngüsünden sonraki statement çalışmaya başlayacaktır.
1
2
3
4
5
6
7
8
9
10
|
public class Test {
public static void main(String args[]) {
for(int x = 10; x < 20; x = x+1) {
System.out.print(“value of x : “ + x );
System.out.print(“\n”);
}
}
}
|
1
2
3
4
5
6
7
8
9
10
|
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
|
Gelişmiş bir For Yapısı :Foreach
Java 5 den sonra tanıtılmıştır. Bu döngü yapısı daha çok Array ler için kullanışlı bir yapı olarak tanımlanabilir.
1
2
3
4
|
for(declaration : expression)
{
//Statements
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public static void main(String args[]){
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ){
System.out.print( x );
System.out.print(“,”);
}
System.out.print(“\n”);
String [] names ={“James”, “Larry”, “Tom”, “Lacy”};
for( String name : names ) {
System.out.print( name );
System.out.print(“,”);
}
}
|
1
2
|
10,20,30,40,50,
James,Larry,Tom,Lacy,
|
Break
Break anahtar kelimesi döngüyü sonlandırmak için kullanılır. Break anahtar kelimesi döngü içerisinde veya bir switch yapısı içerisinde kullanılmalıdır.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public class Test {
public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
if( x == 30 ) {
break;
}
System.out.print( x );
System.out.print(“\n”);
}
}
}
|
1
2
|
10
20
|
Continue
Continue anahtar kelimesi döngü içerisinde bulunan anlık durumu durdurur ve bir sonraki döngü adımına geçilmesini sağlar.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public class Test {
public static void main(String args[]) {
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ) {
if( x == 30 ) {
continue;
}
System.out.print( x );
System.out.print(“\n”);
}
}
}
|
1
2
3
4
|
10
20
40
50
|