Penyataan beralih Java (Dengan Contoh)

Dalam tutorial ini, anda akan belajar menggunakan pernyataan beralih di Java untuk mengendalikan aliran pelaksanaan program anda dengan bantuan contoh.

The switchkenyataan membolehkan kita untuk melaksanakan satu blok kod antara banyak alternatif.

Sintaks switchpernyataan di Java adalah:

 switch (expression) ( case value1: // code to be executed if // expression is equal to value1 break; case value2: // code to be executed if // expression is equal to value2 break;… … default: // default statements )

Bagaimana pernyataan suis berfungsi?

Ungkapan dinilai sekali dan dibandingkan dengan nilai setiap label kes .

  • Sekiranya terdapat padanan, kod yang sesuai setelah label kes sepadan dijalankan.
    Contohnya, jika nilai ungkapan sama dengan nilai2, kod selepasnya case value2:dijalankan.
  • Sekiranya tidak ada padanan, kod selepasnya default:dijalankan.

Catatan : Kami dapat melakukan fungsi yang sama menggunakan Java jika … lain … jika tangga. Walau bagaimanapun, sintaks pernyataan suis lebih bersih dan lebih mudah dibaca dan ditulis.

Carta alir Pernyataan suis

Carta alir penyataan suis Java

Contoh 1: Penyataan suis Java

 // Java Program to check the size // using the switch… case statement class Main ( public static void main(String() args) ( int number = 44; String size; // switch statement to check size switch (number) ( case 29: size = "Small"; break; case 42: size = "Medium"; break; // match the value of week case 44: size = "Large"; break; case 48: size = "Extra Large"; break; default: size = "Unknown"; break; ) System.out.println("Size: " + size); ) )

Keluaran :

 Saiz: Besar

Dalam contoh di atas, kami telah menggunakan pernyataan beralih untuk mencari ukurannya. Di sini, kita mempunyai nombor yang berubah-ubah. Pemboleh ubah dibandingkan dengan nilai setiap pernyataan kes.

Oleh kerana nilainya sesuai dengan kes 44 , pemboleh ubah ukuran diberikan dengan nilai Large.

pernyataan putus dalam suis Java … kes

Perhatikan bahawa kami telah menggunakan breakpernyataan dalam setiap blok kes. Ini berguna untuk menamatkan penyataan.

Sekiranya breakpernyataan tidak digunakan, semua kes selepas kes sepadan dijalankan. Sebagai contoh,

 class Main ( public static void main(String() args) ( int expression = 2; // switch statement to check size switch (expression) ( case 1: System.out.println("Case 1"); // matching case case 2: System.out.println("Case 2"); case 3: System.out.println("Case 3"); default: System.out.println("Default case"); ) ) )

Pengeluaran

 Kes 2 Kes 3 Kes lalai

Dalam contoh di atas, kami belum menggunakan breakpernyataan tersebut. Di sini, ungkapan sepadan dengan case 2.

Anda dapat melihat bahawa bersama-sama case 2, semua kes berikut juga dilaksanakan.

Ini bukan output yang diinginkan. Oleh itu, perlu menggunakan breakpenyataan dengan setiap blok kes .

Contoh 2: Membuat Kalkulator menggunakan pernyataan beralih

Program di bawah ini mengambil tiga input dari pengguna: satu operator dan 2 nombor . Berdasarkan operator yang diberikan oleh pengguna, ia melakukan pengiraan pada nombor. Kemudian hasilnya dipaparkan di skrin.

Sebelum anda mengikuti program ini, pastikan anda mengetahui tentang Java Scanner untuk mengambil input daripada pengguna.

 import java.util.Scanner; class Main ( public static void main(String() args) ( char operator; Double number1, number2, result; // create an object of Scanner class Scanner input = new Scanner(System.in); // ask users to enter operator System.out.print("Choose an operator: +, -, *, or /: "); operator = input.next().charAt(0); // ask users to enter numbers System.out.print("Enter first number: "); number1 = input.nextDouble(); System.out.println("Enter second number: "); number2 = input.nextDouble(); switch (operator) ( // performs addition between numbers case '+': result = number1 + number2; System.out.print(number1 + "+" + number2 + " = " + result); break; // performs subtraction between numbers case '-': result = number1 - number2; System.out.print(number1 + "-" + number2 + " = " + result); break; // performs multiplication between numbers case '*': result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); break; // performs division between numbers case '/': result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); break; default: System.out.println("Invalid operator!"); break; ) input.close(); ) )

Keluaran 1

 Pilih operator: +, -, *, atau /: + Masukkan nombor pertama: 23 Masukkan nombor kedua: 21 23.0 + 21.0 = 44.0

Keluaran 2

 Pilih operator: +, -, *, atau /: - Masukkan nombor pertama: 24 Masukkan nombor kedua: 13 24.0-13.0 = 11.0

Keluaran 3

 Pilih operator: +, -, *, atau /: * Masukkan nombor pertama: 12 Masukkan nombor kedua: 6 12.0 * 6.0 = 72.0

Keluaran 4

 Pilih operator: +, -, *, atau /: / Masukkan nombor pertama: 36 Masukkan nombor kedua: 6 36.0 / 6.0 = 6.0

Keluaran 5

Pilih operator: +, -, *, atau /:? Masukkan nombor pertama: 12 Masukkan nombor kedua: 23 Pengendali tidak sah!

Dalam contoh di atas, kami menggunakan switch… casepernyataan untuk melakukan penambahan, pengurangan, pendaraban, dan pembahagian.

Catatan : Pernyataan suis Java hanya berfungsi dengan:

  • Jenis data Java Primitive: byte, pendek, char, dan int
  • Jenis Java yang dihitung
  • Kelas Rentetan Java
  • Kelas Pembungkus Java: Character, Byte, Short, and Integer.

Artikel menarik...