Dalam pengaturcaraan Java, pernyataan kes suis ialah struktur kawalan yang digunakan untuk melaksanakan satu blok kod di kalangan banyak berdasarkan nilai pembolehubah. Ia boleh menjadi lebih cekap dan boleh dibaca daripada menggunakan berbilang pernyataan if-else. Satu konsep penting untuk difahami apabila menggunakan pernyataan kes suis ialah "jatuh".
Fall-through berlaku apabila pelaksanaan kod diteruskan dari satu kes ke yang seterusnya tanpa menemui pernyataan putus. Secara lalai, selepas blok kes yang sepadan dilaksanakan, aliran kawalan akan jatuh ke blok kes berikutnya sehingga pernyataan putus ditemui atau pernyataan suis tamat.
Berikut ialah sintaks asas pernyataan kes suis dalam Java:
switch (expression) { case value1: // code block break; case value2: // code block break; default: // default code block }
Mari kita lihat contoh untuk memahami cara kerja gagal:
int day = 2; switch (day) { case 1: System.out.println("Monday"); case 2: System.out.println("Tuesday"); case 3: System.out.println("Wednesday"); default: System.out.println("Other day"); }
Dalam contoh ini, outputnya ialah:
Tuesday Wednesday Other day
Apabila hari bersamaan dengan 2, blok kes 2 dilaksanakan, mencetak "Selasa." Memandangkan tiada pernyataan putus selepas kes 2, pelaksanaan diteruskan ke kes 3 dan kemudian ke kes lalai, masing-masing mencetak "Rabu" dan "Hari lain". Ini ialah contoh klasik tingkah laku terputus-putus.
Untuk mengelakkan kegagalan, anda harus mengakhiri setiap kes dengan pernyataan putus:
int day = 2; switch (day) { case 1: System.out.println("Monday"); break; case 2: System.out.println("Tuesday"); break; case 3: System.out.println("Wednesday"); break; default: System.out.println("Other day"); break; }
Kini, outputnya ialah:
Tuesday
Kadangkala, fall-through boleh digunakan secara sengaja untuk melaksanakan berbilang kes dengan blok kod yang sama:
int day = 2; switch (day) { case 1: case 2: case 3: case 4: case 5: System.out.println("It's a weekday"); break; case 6: case 7: System.out.println("It's a weekend"); break; default: System.out.println("Invalid day"); }
Dalam contoh ini, nilai hari 1 hingga 5 semuanya akan menghasilkan "Hari bekerja" dicetak.
Memahami kegagalan dalam pernyataan kes suis adalah penting untuk menulis kod Java yang jelas dan bebas pepijat. Walaupun kegagalan boleh berguna dalam senario tertentu, secara amnya adalah amalan yang baik untuk menggunakan pernyataan putus untuk mengelakkan tingkah laku yang tidak diingini.
Nota: Tidak seperti Java, binaan kes apabila dalam Ruby tidak mempamerkan gelagat gagal. Setiap klausa adalah bebas dan pelaksanaan tidak akan diteruskan secara automatik apabila klausa tanpa arahan yang jelas.
Atas ialah kandungan terperinci Memahami Fall-Through dalam Pernyataan Kes Suis Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!