Yazacağımız programlarda döngülere ihtiyaç duyabiliriz. Örneğin ; sınıf mevcuduna göre sınıftaki öğrencileri listeye atan bir program… Burada her bir öğrenci için teker teker elle yazmak yerine, döngüler sayesinde bunu tek satırda yapabiliriz. Aşağıda döngüleri inceleyelim :

WHİLE DÖNGÜSÜ

While döngüsünde tekrar etme sayısını bir belirlemeyiz. Bunun yerine bir koşul veririz ve o koşulun dışına çıkana kadar döngü dönmeye devam eder.

Genel kullanım şekli :

while (kosul)
{
//islemler
}

Bir örnekle pekiştirelim :

package com.org.java;
public class Java{
public static void main (String [] args)
{
int sayi = 5;
while (sayi > 0)
{
System.out.println("Sayi pozitif ve degeri " + sayi);
sayi--;
}
}
}

Ekran çıktısı :

Sayi pozitif ve degeri 5
Sayi pozitif ve degeri 4
Sayi pozitif ve degeri 3
Sayi pozitif ve degeri 2
Sayi pozitif ve degeri 1

While komutu ile sonsuz döngüler oluşturabiliriz.. Örneğin :

package com.org.java;
public class Java
{
public static void main (String [] args)
{
int sayi = 5;
while (true)
{
if (sayi > 0)
{
System.out.println(sayi);
sayi--;
}
else
{
break;
}
}
}

Ekran çıktısı :

5
4
3
2
1

Burada görüldüğü gibi while döngüsü sonsuz olarak çalıştırılmış ve içerisindeki kontrol yapısı sağlanmaz ise break komutu ile döngüden çıkılmış. Burada kontrol yapısı belirtmemiş olsaydık bu döngü sonsuza kadar dönerdi.

DO – WHİLE DÖNGÜSÜ

Bu döngünün while döngüsünden tek farkı, döngüye girildikten sonra koşula bakıldığı için koşul yanlış olsa bile döngüye en az bir defalığına girilir.

Genel kullanım şekli :

do
{
//işlemler
}while(kosul);

do-while döngüsüne basit bir örnek verelim :

package com.org.java;
public class Java
{
public static void main (String [] args)
{
int sayi = 1;
do
{
System.out.println("Sayi degiskeni = " + sayi);
}while(sayi<0);
}
}

Ekran çıktısı :

Sayi degiskeni = 1

FOR DÖNGÜSÜ

Bu döngü türünde bir aralık belirtilir ve bu aralık boyunca döngü çalışır. Yani döngünün kaç kez dönmesini istiyorsak bunu belirtmemiz gerekir.

Genel kullanım şekli :

for (baslangic degeri ; kosul ; artim miktari)
{
//islemler
}

Basit bir örnek verelim :

package com.org.java;
public class Java
{
public static void main (String [] args)
{
for (int i = 1; i<=10; i+=2)
{
System.out.print(i + " ");
}
}
}

Ekran çıktısı :

1 3 5 7 9

GELİŞMİŞ FOR DÖNGÜSÜ

for döngüsünde parantezler içerisinde yazdığımız artım miktarı, başlangıç değeri gibi ifadeleri yazmak yerine daha kısa bir şekilde bu döngüyü oluşturabiliriz.

Bir örnek verecek olursak :

package com.org.java;
public class Java
{
int [] dizi = {1,2,3,4,5};
for (int i : dizi)
System.out.print(i + " ");
}
}

Ekran çıktısı :

1 2 3 4 5

BREAK VE CONTİNUE İFADELERİ

break ifadesi ile bloktan çıkıldığı gibi döngüleride sonlandırabiliriz.

continue ise istenmeyen değerler için döngünün çalıştırılması istenmiyorsa kulanılır. Örneğin; sayımız 5 olduğunda döngü içerisindeki işlemleri yapmamasını sağlamak için kullanılır.