09 Eylül
Selam gençler;
Bu yazıda if ifades, if-then-else ifadesi continue,break,switch, while,do-while,for gibi Java da kullanılan statementlere değineceğiz.
Öncelike bu statements ne demektir ifadeler ne işe yarar Java da ?
Gençler, bunlar bir programın akışını değiştirmek için kullanılır örneğin siz bir veritabanından 10000 tane ürünü çekip elle yazmak yerine döngüye alırız (for,do-while,while) ki biz bunları elle yazmayalım yani işimizi kolaylaştırır yada bazı koşulları test ederiz eğer ki bu doğru ise şu kodu çalıştır(if-then-else statement). Örneğin bir genç 18 yaşından büyük ise oy kullanabilirken 18 yaşından küçük ise oy kullanamaz gibi....
Şimdi tek tek değinelim konularımıza.
Bizim karar verme mekanizmalarımız olan yerlerde kullanırız yukarıda 18 yaş-oy verme örneği gibi. Tabi programlamada olmazsa olmazlardandır yani büyük bir projede if-else statementi görmeme ihtimaliniz imkansız gibi bir şey... Çünkü programın akışında çok büyük bir etki yaratır.
Java da if statementi boolean koşullarını kontrol eder : değer true mi false mi ?
En basit statement olan if statementini inceleyelim. "if-then" olarak da görürsünüz yani "eğer-o zaman" gibi bi mükemmel türkçe anlama geliyor :)
public class Main {
public static void main(String[] args) {
if (condition){
// Condition true ise çalışacak kod yeri
}
}
}
olay şu eğer ki (if) içerisine yazılan şart (condition) doğru ise if kod blokları içerisinde kodlar çalışacaktır. Bizim oy kullanma örneğimiz vardı ona değinelim hemen...
public class Main {
public static void main(String[] args) {
int age = 20;
if (age >= 18){
System.out.println("Oy kullanabilir");
}
}
}
Bu sefer de şöyle bir durum var bizim eğer ki "age > 18" değil de küçük olması durumunu nasıl yapacağız ? Bunun için de yani bir şartın doğruluğunu yada yanlışlığını kontrol etmek için if-then-else statementini kullanırız.
public class Main {
public static void main(String[] args) {
if(condition){
// Condition true ise çalışacak kod bloğu
}else {
// Condition false is çalışacak kod bloğu
}
}
}
Aşağıda da bizim oy örneğimizin bir if-then-else kodu var ona bir değinelim.
public class Main {
public static void main(String[] args) {
int age = 16;
if (age >= 18){
System.out.println("Oy kullanabilir");
}else {
System.out.println("Oy kullanamaz");
}
}
}
görüldüğü üzere age isimli değişkenimizin değeri 16 eğer ki age 18'den büyük ise if kod bloğu içerisine girip çalışacak değilse else kod bloğu içerisine girip orası çalışacaktır.
Bu sefer eğer ki biz bir koşul üzerinde birden fazla şartı sorguluyorsak bu statementi kullanırız.
public class Main {
public static void main(String[] args) {
if (condition_1) {
// Condition true ise çalışacak kod bloğu
} else if (condition_2) {
// Condition_1 false ve Condition_2 true ise burası çalışacak
} else if (condition_3) {
// Condition_1,Condition_2 false ise ve Condition_3 true ise burası çalışacak
} else {
// Conditionların hepsi false is çalışacak kod bloğu
}
}
}
Örnek olarak şöyle bizim günlerimizi bizim sıraladığımız ve buna göre ekrana hangi gün olduğunu yazan kodu verelim.
public class Main {
public static void main(String[] args) {
int gun = 3;
if (gun == 1){
System.out.println("P.tesi");
}else if (gun == 2){
System.out.println("Salı");
}else if (gun == 3){
System.out.println("Çarşamba");
}else if (gun == 4){
System.out.println("Perşembe");
}else if (gun == 5){
System.out.println("Cuma");
}else if (gun == 6){
System.out.println("Cumartesi");
}else if (gun == 7){
System.out.println("Pazar");
}else {
System.out.println("Geçersiz gün.");
}
}
}
Görüldüğü üzere gün isimli bir değişken verdik ve if-else if-else statementlere bıraktık eğer ki gun isimli değişken hangisine eşit ise ordaki kod bloğu çalışacak.
Eğer ki biz if ifademizin içerisinde başka bir if statement daha yazarsak buna nested if statement diyoruz yani iç içe if kontrolleri.
public class Main {
public static void main(String[] args) {
if (condition){
// condition doğru ise çalışacak kod bloğu
if (condition_2){
// condition_2 doğru ise çalışacak kod bloğu_2
}
}
}
}
Örneğin bir kişinin ehliyeti var ve arabası da varsa mantıken bu kişi trafiğe çıkabilir değil mi bunu sanal aleme dökelim...
public class Main {
public static void main(String[] args) {
boolean ehliyetVarMi = true;
boolean arabaVarMi = true;
if (ehliyetVarMi){
System.out.print("Ehliyete sahipsiniz");
if (arabaVarMi){
System.out.println(" ve trafiğe çıkabilirsiniz");
}
}
}
}
Biz önceki dersimizde Java da Operatörlere değindik ternary operator bu kısaca basit bir if-then-else statementini karşılamak için kısaltılmış olaydır.
Kısaca buna da değinelim.
public class Main {
public static void main(String[] args) {
int age = 20;
String sonuc = age >= 18 ? "Oy kullanabilir" : "Oy kullamaz";
System.out.println("Sonuc : "+sonuc);
}
}