Java Dersleri – 15 – break ve continue

By | 27 Ağustos 2019

Break ve Continue

Daha önce break‘i switch case dersinde görmüştük hatırlarsanız. İlk önce break ve continue ne anlama geldiklerini görelim. Break ve continue anlamları;
break –> koşul ne olursa olsun döngü orada son buluyor.
continue –> İşlemi sonlandırır ama döngünün başına döner.


break Kullanımı

while break kullanımı – yapısı

break sayesinde çok güzel örnekler yapabiliriz. Örneğin kullanıcıdan parola isteyelim. Doğru parolayı girene kadar parola istensin. Doğru parola girilince de döngüyü break ile sonlandıralım.

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        while (true)
        {
            Scanner scanner = new Scanner(System.in);
            System.out.print("Parolayı Giriniz : ");
            String parolaAl = scanner.next();

            if (parolaAl.equals("mrcaracal.com"))
            {
                System.out.println("Tebrikler Doğru Parola!");
                break;
            }
        }
    }
}

Örnek Çıktı;

Parolayı Giriniz : deneme1
Parolayı Giriniz : deneme2
Parolayı Giriniz : slkdhfs
Parolayı Giriniz : sdfhgsd
Parolayı Giriniz : sdfhgsdfhsfd
Parolayı Giriniz : mrcaracal.com
Tebrikler Doğru Parola!

Örnek çıktıda da görüldüğü gibi doğru parola girilene kadar işlemler sürekli devam etti.
Kodu inceleyelim biraz. While döngüsü kullandık ama true, Yani koşul sürekli sağlanıyor. Bu da sonsuz döngü demektir 🙂
Döngünün içine girildi.
Kullanıcıdan parola istendi ve alınan veri parolaAl değişkenine atandı.
if ile alınan veri karşılaştırıldı. Doğru ise içine girilip mesaj vermenin ardından break ile döngü kırıdı.
if sağlanmadıysa döngü tekrar dönecektir.

Şimdi aynı örneği daha güzel yapalım. Sonsuz döngü ile kullanıcıdan parola alalım, doğru ise döngü kırılsın. yanlış ise döngü baştan dönsün. AMA! 3 yanlış hakkı var.

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int i = 0;
        while (true)
        {
            Scanner scanner = new Scanner(System.in);
            System.out.print("Parolayı Giriniz : ");
            String parolaAl = scanner.next();

            if (parolaAl.equals("mrcaracal.com"))
            {
                System.out.println("Tebrikler Doğru Parola!");
                break;
            }
            i++;
            if (i == 3)
            {
                System.out.println("Tüm Hakkınızı Kullandınız!");
                break;
            }
        }
    }
}

İlk 3 hakkından birisinde doğru parola girilirse;

Parolayı Giriniz : sdfgsd
Parolayı Giriniz : mrcaracal.com
Tebrikler Doğru Parola!

3 hakkında da yanlış parola girilirse;

Parolayı Giriniz : sallama1
Parolayı Giriniz : mrcarrrrracal
Parolayı Giriniz : saşsdlsdsallama2
Tüm Hakkınızı Kullandınız!

Aynı programı for döngüsü ile de yapabiliriz. for döngüsü sonsuz döngüye nasıl sokarız onu da görelim.

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int i = 0;
        for (;;)
        {
            Scanner scanner = new Scanner(System.in);
            System.out.print("Parolayı Giriniz : ");
            String parolaAl = scanner.next();

            if (parolaAl.equals("mrcaracal.com"))
            {
                System.out.println("Tebrikler Doğru Parola!");
                break;
            }
            i++;
            if (i == 3)
            {
                System.out.println("Tüm Hakkınızı Kullandınız!");
                break;
            }
        }
    }
}

baslangıc, kosul, artırma/azaltma kısımlarını yazmazsak sonsuz döngüye girer. Ve ;‘leri herzaman yazmak zorundayız.


continue Kullanımı

while continue kullanımı – yapısı

continue‘ı, bir şeyleri atlamak es geçmek istiyorsak kullanırız aslında.
Buna uygun bir örnek yapalım hemen.
Örneğimiz şöyle olsun. 1’den 11’e kadar sayıları ekrana basalım ama 3,6 ve 7 sayılarını ekrana basmasın.
for ile;

public class Main {
    public static void main(String[] args) {
        for (int i = 1; i < 11; i++)
        {
            if (i == 3 || i == 6 || i == 7)
            {
                System.out.println("-----> Bu sayı engellendi.");
                continue;
            }
            System.out.println("i = "+i);
         }
    }
}

Çıktısı;

i = 1
i = 2
-----> Bu sayı engellendi.
i = 4
i = 5
-----> Bu sayı engellendi.
-----> Bu sayı engellendi.
i = 8
i = 9
i = 10

while ile;

public class Main {
    public static void main(String[] args) {
        int i = 1;
        while (i < 11)
        {
            if (i == 3 || i == 6 || i == 7)
            {
                System.out.println("-----> Bu sayı engellendi.");
                i++;
                continue;
            }
            System.out.println("i = "+i);
            i++;
        }
    }
}

Çıktısı;

i = 1
i = 2
-----> Bu sayı engellendi.
i = 4
i = 5
-----> Bu sayı engellendi.
-----> Bu sayı engellendi.
i = 8
i = 9
i = 10

One thought on “Java Dersleri – 15 – break ve continue

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir