Switch Statement
Switch statement sebenarnya sama saja dengan if statement, tapi switch lebih spesifik yaitu khusus untuk perbandingan ==. Untuk lebih jelasnya, kita buat kelas bernama SwitchStatement lalu mengetikkan kode berikut ini:
public class SwitchStatement { public static void main(String[] args) { String nilai = "A"; switch(nilai){ case "A": System.out.println("nilai anda perfect"); break; case "B": System.out.println("nilai anda sangat bagus"); //jika mendapat B maka text ini ditampilkan break; case "C": System.out.println("nilai anda cukup"); break; default: System.out.println("anda harus mengulang"); //jika mendapat selain A, B, C alias dapat D dan E maka text ini ditampilkan } } }
Jika kita run maka hasilnya:
nilai anda perfect
Switch lambda
Sejak java versi 14, diperkenalkan switch lambda. Hal tersebut ditujukan supaya kita lebih mudah menuliskan switch statement. Switch lambda statement tidak menggunakan kata kunci break. Sebagai perbandingan, sintaks pada contoh di atas ditulis ke bentuk switch lambda seperti kode di bawah ini:
public class SwitchLambda { public static void main(String[] args) { String nilai = "A"; switch(nilai){ case "A" -> System.out.println("nilai anda perfect"); case "B" -> System.out.println("nilai anda sangat bagus"); case "C" -> System.out.println("nilai anda cukup"); default -> System.out.println("anda harus mengulang");//akan dieksekusi jika kondisinya tidak memenuhi semua switch } } }
Jika kita run maka outputnya sama dengan contoh switch di atas. Yang manakah yang lebih anda sukai?
PREVIOUS: Else if statement
NEXT: Ternary Operator