Pernyataan Java Switch: Contoh Lengkap – Codewithaden

Pernyataan Switch adalah pernyataan cabang multi-arah. Ini memberikan cara mudah untuk mengirimkan eksekusi ke berbagai bagian kode berdasarkan nilai ekspresi.

Sakelar java

Pernyataan Java Switch mengeksekusi satu pernyataan dari beberapa kondisi. Itu seperti if-else-if pernyataan tangga. Pernyataan sakelar berfungsi dengan byte, pendek, int, panjang, jenis enum, string, dan tipe pembungkus seperti byte, pendek, int, dan panjang. Dengan Java 7, Anda dapat menggunakan string dalam pernyataan Switch.

Ekspresi dapat berupa byte, pendek, char, dan tip data data primitif. Ini juga berfungsi dengan tipe yang disebutkan ( Enum di java), Rangkaian , dan Pembungkus kelas.

Poin Kunci Pernyataan Switch di Java

  1. Mungkin ada beberapa nilai kasus untuk ekspresi sakelar.
  2. Nilai kasus harus hanya dari tipe ekspresi sakelar. Nilai kasus harus literal atau konstan . Itu tidak mengizinkan variabel.
  3. Nilai kasus harus unik. Dalam hal nilai duplikat, ia membuat kesalahan waktu kompilasi.
  4. Ekspresi sakelar java harus dari byte, pendek, int, panjang ( dengan tipe pembungkusnya ), enum dan rangkaian.
  5. Setiap pernyataan kasus dapat memiliki pernyataan istirahat t, yang opsional. Ketika kontrol mencapai pernyataan Break, ia melompat kontrol setelah ekspresi sakelar. Jika pernyataan Break tidak ditemukan, itu mengeksekusi kasus berikutnya.
  6. Nilai kasus dapat memiliki label default opsional.

Lihat sintaks berikut.

switch(expression){    
  case value1:    
  break;  //optional  

  case value2:    
  break;  //optional   
    
  default:     
  code will be executed if all the cases are not matched;    
} 

Lihat contoh kode berikut.

class Conditionals {
  public static void main(String[] args) {
    String character = "Eleven";
    String StrangerThings;

    // switch statement with int data type
    switch (character) {
    case "Steve":
      StrangerThings = "Joe";
      break;
    case "Robin":
      StrangerThings = "Maya";
      break;
    case "Mike":
      StrangerThings = "Finn";
      break;
    case "Joyce":
      StrangerThings = "Winona";
      break;
    case "Eleven":
      StrangerThings = "Millie Bobby Brown";
      break;
    case "Dustin":
      StrangerThings = "Gaten";
      break;
    case "Will":
      StrangerThings = "Noah";
      break;
    default:
      StrangerThings = "Invalid day";
      break;
    }
    System.out.println(StrangerThings);
  }
} 

Lihat output berikut.

➜  java javac Conditionals.java
➜  java java Conditionals
Millie Bobby Brown
➜  java 

Pernyataan sakelar jatuh.

Pernyataan Java Switch adalah jatuh. Ini berarti mengeksekusi semua pernyataan setelah pertandingan pertama jika pernyataan Break tidak ada. Lihat contoh kode berikut.

class Conditionals {
  public static void main(String[] args) {
    int number = 50;
    // switch expression with int value
    switch (number) {
    // switch cases without break statements
    case 10:
      System.out.println("10");
    case 50:
      System.out.println("50");
    case 60:
      System.out.println("60");
    default:
      System.out.println("Not in 10, 50 or 60");
    }
  }
} 

Lihat output berikut.

➜  java java Conditionals
50
60
Not in 10, 50 or 60
➜  java 

Jadi, ketika dapat ditemukan pertandingan pertama, itu akan menjalankan semua kasus berikut.

Dalam kasus di atas, yang nilainya sepuluh tidak akan dieksekusi karena tidak cocok dengan 50.

Pernyataan sakelar bersarang Java

Lihat contoh pernyataan sakelar bersarang berikut.

class Conditionals {
  public static void main(String args[]) {
    char branch = 'S';
    int schoolYear = 11;
    switch (schoolYear) {
    case 10:
      System.out.println("All subjects");
      break;
    case 11:
      switch (branch) {
      case 'C':
        System.out.println("Accounting");
        break;
      case 'S':
        System.out.println("Chemistry");
        break;
      case 'A':
        System.out.println("Philosophy");
        break;
      }
      break;
    }
  }
} 

Lihat output berikut.

➜  java javac Conditionals.java
➜  java java Conditionals
Chemistry
➜  java 

Dalam contoh di atas, kami telah memilih tahun ke -11 dan karakter S; Itulah mengapa ia mengembalikan sains.

Java enum di Pernyataan Switch

Java memungkinkan kita untuk menggunakan enum dalam pernyataan sakelar.

Lihat contoh pemrograman berikut.

class Conditionals {
  public enum Day {
    Sun, Mon, Tue, Wed, Thu, Fri, Sat
  }

  public static void main(String args[]) {
    Day[] DayNow = Day.values();
    for (Day Now : DayNow) {
      switch (Now) {
      case Sun:
        System.out.println("Sunday");
        break;
      case Mon:
        System.out.println("Monday");
        break;
      case Tue:
        System.out.println("Tuesday");
        break;
      case Wed:
        System.out.println("Wednesday");
        break;
      case Thu:
        System.out.println("Thursday");
        break;
      case Fri:
        System.out.println("Friday");
        break;
      case Sat:
        System.out.println("Saturday");
        break;
      }
    }
  }
} 

Lihat output berikut.

➜  java javac Conditionals.java
➜  java java Conditionals
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
➜  java 

Java Wrapper di Pernyataan Switch

Java memungkinkan kita untuk menggunakan empat kelas pembungkus: byte, pendek, integer, dan panjang dalam pernyataan switch.

class Conditionals {
  public static void main(String args[]) {
    Integer age = 18;
    switch (age) {
    case (16):
      System.out.println("You are under 18.");
      break;
    case (18):
      System.out.println("You are eligible for vote.");
      break;
    case (65):
      System.out.println("You are senior citizen.");
      break;
    default:
      System.out.println("Please give the valid age.");
      break;
    }
  }
} 

Lihat outputnya.

➜  java javac Conditionals.java
➜  java java Conditionals
You are eligible for vote.
➜  java 

Itu untuk tutorial ini.

Artikel ini berasal dari website Winpoin, dan kemudian diterjemahkan ke bahasa indonesia, baca artikel asli disini

Leave a Reply

Your email address will not be published. Required fields are marked *