Java

Java’da Kontrol İfadeleri – 1

Bir önceki yazımız Operatörler konusunda Java’da kullanılan operatörlerin neler olduğunu görmüştük. Şimdi ise Java’daki Kontrol İfadelerini inceleyeceğiz.

Programlar yazarken bazı durumlarda seçimler yapmamız gerekebilir. Veya iterasyon yapmamız icab eder. Yahut bir noktadan sonra bambaşka bir noktaya sıçrama yapmamız lazım gelir. İşte tüm bunları gerçekleştirebilmek için kontrol ifadelerini kullanırız.

Java’da Seçim İfadeleri

if ve switch yapılarını kullanarak Java programlarımıza seçim ifadeleri ekleyebiliriz.

if Yapısı

Yazım itibariyle diğer programlama dillerinden farklı olmayan if yapısını seçim yaparken kullanmaktayız. Bir koşul durumunda eğer koşul sağlanıyorsa sonraki kısımdaki işlemler gerçekleştirilir, eğer sağlanmıyorsa kısımlar atlanarak başka bir yere dallanılır. Bu şekilde dallanmalar yaparak programımızın akışlarını kontrol ederiz. Bir örnekle kolayca anlamak mümkün:

Bu örnekle bir a değişkeni oluşturup 10 değerini atadık. Daha sonra a’nın değerini if yapısı ile kontrol ettik. Eğer a değişkeni 10 ise if yapısının ilk bölümündeki işlem gerçekleştirilecek ve konsola “a değişkeninin değeri 10’dur.” ifadesi yazılacaktır. Eğer a değişkeni 10 değerinden farklı olsaydı bu kısım tamamen atlanıp else bloğundaki işlem gerçekleştirilecekti ve konsola “a değişkeninin değeri 10’dan farklıdır.” ifadesi yazılacaktı.

[alert style=”red”]! Eğer if veya else ifadelerinden sonra tek satırlık bir işlem yapacaksak süslü parantez açmadan yazabiliriz. Birden fazla işlem yapılacaksa mutlaka süslü parantez içine yazmalıyız.[/alert]

Not: if yapısının içinde true yazsaydık, yine ekrana “a değişkeninin değeri 10’dur.” ifadesi yazılacaktı. if yapısı koşul olarak boolean ifadeler alabilir.

İç içe if Yapısı

Oldukça sık kullanılan bu yapı koşul içerisinde koşul belirtmemizi sağlar. Örneğin bugün hava güzelse ve piknik alanı müsaitse pikniğe gidelim, değilse yürüyüşe çıkalım, hava güzel değilse evde oturalım dersek, öncelikli şartımız havanın güzel olması, sonraki şartımız ise piknik alanının müsaitliğidir. Şuna benzer bir kod yazmamız gerekirdi:

 if-else Merdiveni

Bu yapı da oldukça kullanışlı ve faydalı olmaktadır. Yine önceki örneğimize benzer bir ifade kuracak olursak, bugün hava güzelse dışarı çıkalım, hava güzel değil ve arabamızda benzin varsa arabayla çıkalım, hava güzel değil, arabada benzin yok ve arkadaşımızın arabası varsa sinemaya gidelim, hiçbiri yoksa evde oturalım ifadesini merdiven yapısını kullanarak kolaylıkla programa şu şekilde çeviririz:

 switch Yapısı

switch yapısı Java’nın çoklu dallanmalarda kullandığı ifadedir. Bir deyime bağlı olarak programın çalışmasını farklı yerlere doğru dallandırır. if-else merdivenine oldukça güçlü bir alternatiftir. Genel yapısı;

Çalışması şu şekildedir. switch ifadesi içindeki deyim, case içerisindeki değerler ile karşılaştırılır. Eğer eşleşme varsa o case içindeki ifadeler çalıştırılır. Hiçbir eşleşme olmazsa default çalıştırılır. case ifadelerinin sonundaki break ise, switch yapısının dışında çıkılmasını sağlar. Bir örnekle daha kolay anlayalım:

Bu programcık ekrana 1’den 5’e kadar i’nin değerlerini yazacaktır fakat i değeri 6 olduğunda herhangi bir case eşleşmesi bulamayacağından default çalıştırılacaktır.

switch-case yapısını kullanırken her defasında break yazmamız gerekmiyor. Nasıl olacağını görmek için şu güzel örneği incelemekte fayda var:

Örnekte ay olarak 4’ü seçtik ve yapımıza baktığımızda case 4 olduğunda mevsim‘in Bahar olduğunu görüyoruz. Dolayısıyla ekrana Nisan ayının Bahar mevsiminde olduğunu yazacaktır.

Not: switch ifadeleri tıpkı if ifadesinde olduğu şekilde iç içe yazılabilir.

[alert style=”red”]! switch ifadesi yalnızca eşitlik testi yapabilir, fakat if ifadesi her türlü mantıksal karşılaştırma yapabilir.[/alert]

[alert style=”red”]! Aynı switch ifadesi içinde bulunan iki case aynı değere sahip olamaz.[/alert]

[alert style=”red”]! İç içe yerleşmiş if yapısı kullanmak yerine switch yapısı kullanmak daha verimlidir.[/alert]

Bu yazıda Java’da kullanılan Kontrol İfadeleri’nden Seçim İfadeleri‘nin neler olduğunu görmüş olduk. if yapısı ve switch yapısını daha ayrıntılı görmüş olduk, örneklerle pekiştirdik. Bir sonraki yazıda ise Kontrol İfadeleri-2 konusunu ele alacağız.

Bilgisayar Mühendisi.