Switch Expression Java
Berikut merupakan contoh perbedaan antara switch case biasa dengan switch case expression dalam java.
Regular Switch Case
Java Switch merupakan fitur yang sudah ada sejak awal bahasa Java. Fitur ini memungkinkan kita untuk memilih blok kode yang akan dieksekusi berdasarkan nilai dari suatu variabel atau ekspresi.
contoh switch case biasa
public class MyClass {
public static void main(String args[]) {
String kode = "011";
String role;
switch (kode) {
case "011" :
role = "Admin";
break;
case "012" :
role = "Manager";
break;
case "013" :
role = "Staff";
break;
case "014" :
role = "Freelance";
break;
default :
role = "Magang";
}
System.out.println(role);
/**
* ====== output ======
* Admin
*/
}
}
Kelebihan Regular Switch:
- Sederhana: Mudah dipahami dan digunakan untuk kasus-kasus sederhana.
- Kompatibilitas: Didukung oleh semua versi Java.
Kekurangan Regular Switch:
- Kode panjang: Untuk kasus dengan banyak kondisi, kode bisa menjadi panjang dan sulit dibaca.
- Terbatas: Hanya mendukung tipe data primitif (int, char, byte, short) dan enum.
Switch Expression
Java Switch Expression merupakan fitur yang baru diperkenalkan pada Java 14 (sebagai preview) dan kemudian release stable di Java 16. Fitur ini merupakan pengembangan dari regular switch dengan menawarkan sintaks yang lebih ringkas dan serta dapat langsung memiliki balikan value.
contoh switch case expression
public class MyClass {
public static void main(String args[]) {
String kode = "011";
String role = switch (kode) {
case "011" -> "Admin";
case "012" -> "Manager";
case "013" -> "Staff";
case "014" -> "Freelance";
default -> "Magang";
};
System.out.println(role);
/**
* ====== output ======
* Admin
*/
}
}
Kelebihan Switch Expression:
- Lebih ringkas: Sintaksnya lebih pendek dan mudah dibaca.
- Ekspresif: Dapat digunakan sebagai ekspresi yang mengembalikan nilai.
Kekurangan Switch Expression:
- Membutuhkan Java versi terbaru: Hanya tersedia mulai dari Java 14 (preview) dan Java 16 (stabil).