发现了一个很抽象的问题
这样会报错重复声明变量
switch (sc.next()){
case "1":
String temp1 = "OK";
System.out.println(temp1);
break;
case "2":
String temp1 = "err";
System.out.println(temp1);
break;
case "3":
temp1 = "err";
System.out.println(temp1);
break;
}
这样会报未初始化
switch (sc.next()){
case "1":
String temp1 = "OK";
System.out.println(temp1);
break;
case "2":
System.out.println(temp1);
break;
case "3":
temp1 = "err";
System.out.println(temp1);
break;
}
既然都是在同一个作用域内,如果不允许重复声明,说明变量已经被声明过了,为什么第二个case里temp是没有值的呢.
留待以后解决TAT