CETURK Java Teknolojileri Etkinliği Fare imlecini otomatik hareket ettirme
Nov 05

Programlamada en çok kullanılan yapılardan biri de “karar verme ve Kontrol etme” yapılarıdır.Program akışına yön vermek ve doğru sonuçlar alabilmek için neredeyse olmazsa olmazdır.Genel kullanım şekli aşağıdaki gibidir.

if (şartlar) {
Asıl şartlar buraya yazılır.
}
else if (şartlar){
Asıl şartlara ek şartlar buraya yazılır.
}
else {
Yukarıdaki şartlar dışında başka “ne şart olursa” çalışacak kodlar da buraya yazılır.
}

Bu oldukça genel bir kullanım şeklidir. İsterseniz;

* Sadece if
* if ve else if
* if ve else birlikte kullanılabilir.

Aşağıdaki örnekte program rastgele bir tamsayı üretiyor ve bu sayının durumuna göre yıldız veriyor.

Örnek;

public class KontrolYapı{
  public static void main(String args[]){
    for(int i=0; i<5; i++){
      int sayi = (int)(Math.random()*150);
 
      //Sayı 100'e eşit veya küçük VE 75 ten büyükse
      if((sayi<=100) && (sayi>75)){ 
        System.out.println("3 YILDIZ");
      }
      else if((sayi<=75) && (sayi>50)){
        System.out.println("2 YILDIZ");
      }
      else if((sayi<=50) && (sayi>25)){
        System.out.println("1 YILDIZ");
      }
      else{
        //Yukarıdaki şartların hiçbirini sağlamıyorsa
        System.out.println("BAŞARISIZ"); 
      }
    }
  }
}

Bu kontrol ifadeleri sadece yukarıdaki gibi program akışını değiştirmek için kullanılmaz. Programcının hayal gücüne bağlı olarak çok farklı yerlerde kullanılabilir. Mesela bir değişkene değer vereceksiniz ama hangi değerin daha iyi sonuç vereceğini bilmiyorsunuz. Yada değişkene büyük bir sayı vereceksiniz ama belki de sistem bunu hiç kullanmayacak. Sadece bir ihtimal için hafızada fazladan yer işgal etmek doğru olmayabilir. Bu durumlarda da karar yapıları kullanılabilir.

SWITCH;

Eğer bir tamsayının durumuna göre karar verecekseniz bunu Switch ile yapabilirsiniz. Switch ile yapacağınız karar vermeleri tabii ki “if, else if ,else” ile de yapabilirsiniz.

Genel kullanımı klasik bir örnekle şöyle olur;

int sayi;
switch (sayi){
 
case 1:System.out.println("Ocak");break;
case 2:System.out.println("Şubat");break;
case 3:System.out.println("Mart");break;
case 4:System.out.println("Nisan");break;
case 5:System.out.println("Mayıs");break;
case 6:System.out.println("Haziran");break;
case 7:System.out.println("Temmuz");break;
case 8:System.out.println("Ağustos");break;
case 9:System.out.println("Eylül");break;
case 10:System.out.println("Ekim");break;
case 11:System.out.println("Kasım");break;
case 1:System.out.println("Aralık");break;
}

Break, Continue, Return

Özellikle de karar kontrol ve döngülerde kullanılan ve programın akışına yön vermesi için oldukça gerekli olan bazı ifadeler vardır.

Break;

Bu ifadeyi bu şekilde kullandığınızda switch ve for kod bloklarında bloğu terkeder.

for(int i=0; i<10; i++){
  if(i=8){
    break;
  }
}

Break ifadesinin istediğiniz bir noktaya gönderme özelliği de vardır.

atla:
for(int i=0; i<10; i++){
  if(i=8){
    //atla satırına gider ve ordan derlemeye devam eder
    break atla ; 
  }
}

Continue;

Herhangi bir durumu atlamak, görmezden gelmek için kullanılır.

for(int i=0; i<10; i++){
  if(i=8){
    //Bu durumda i=8 olduğunda for bloğundaki ifadeler çalıştırılmayacak
    continue; 
  }
}

Örnek;

for(int i=0; i<5; i++){
  if(i=2){
    continue;
  }
  System.out.println("i = "+ i);
}

Sonuç;
i=1
i=3
i=4
i=5

Return;

Aslında return ifadesi “void” özelliği olan yani çeşitli işlemlerden sonra size bir sonuç dönderecek olan yordamların (metod) döndereceği ifadeyi belirlemek için kullanılır.

return sonuç;

Ancak döngü ifadelerinde sadece “return” ifadesini kullanmak döngü veya şart ifadesinden “çık” anlamına gelir.

yazan Besim Çetin \\ tags: , , , , ,

Cevapla