根据 java 文档,switch 语句示例可能如下所示:
public class SwitchDemo {
public static void main(String[] args) {
int month = 8;
String monthString;
switch (month) {
case 1: monthString = "January";
break;
case 2: monthString = "February";
break;
case 3: monthString = "March";
break;
case 4: monthString = "April";
break;
case 5: monthString = "May";
break;
case 6: monthString = "June";
break;
case 7: monthString = "July";
break;
case 8: monthString = "August";
break;
case 9: monthString = "September";
break;
case 10: monthString = "October";
break;
case 11: monthString = "November";
break;
case 12: monthString = "December";
break;
default: monthString = "Invalid month";
break;
}
System.out.println(monthString);
}
}
我写了一个测试程序:
导入java.util.Scanner;
public class Practice2 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int x = in.nextInt();
switch (x)
{
case 1: x = 4;
System.out.println("Hey");
break;
case 2: x = 5;
System.out.println("You");
break;
default:
System.out.println("as;ldfj'");
}
}
}
如果我选择 1,它会选择情况 1。如果我选择 2,它会选择情况 2。它实际上不会测试 x = 4 和 x = 5。如果这有什么区别,我正在使用 Eclipse。我做错了什么?
最佳答案
x = 4
不是 switch 语句中的 case,而是赋值。
如果您想要 x == 4
的情况,则需要在 switch 语句中使用 case 4:
。
关于java - Switch 差异的语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33534260/