ถ้าไม่ใส่ break ให้กับแต่ละ case มันจะไหลไปที่ case ถัดไป
public class Test { public static void main(String[] args) { int i = 0; switch (i) { case 0: System.out.print("a"); case 1: System.out.print("b"); default: System.out.print("c"); } } }
เอาท์พุทคือ abc
บรรทัดที่ 9 คอมไพล์ไม่ผ่าน
public class Test { public static void main(String[] args) { int i = 0; int j = 1; switch (i) { case 0: System.out.print("a"); break; case j: System.out.print("b"); break; default: System.out.print("c"); break; } } }
สิ่งที่อยู่ใน case ต้องเป็น literal หรือตัวคงที่ ดังนั้นถ้าเปลี่ยน int j เป็น final int j โปรแกรมจะคอมไพล์ผ่าน
หนังสือ เขียนโปรแกรม Java เบื้องต้น
หากจะนำเนื้อหาไปใช้ ต้องแสดงที่มา และห้ามใช้ในเชิงพาณิชย์
Advertisements
One thought on “switch, case, default”