Java switch:变量声明和作用域
Java编译器如何处理以下开关块?“ b”变量的范围是什么?
注意,“ b”变量仅在switch语句的第一个分支中声明。尝试在第二个分支中声明它也会导致“重复的局部变量”编译错误。
int a = 3; switch( a ) {
case 0:
int b = 1;
System.out.println("case 0: b = " + b);
break;
case 1:
// the following line does not compile: b may not have been initialized
// System.out.println("case 1 before: b = " + b);
b = 2;
System.out.println("case 1 after: b = " + b);
break;
default:
b = 7;
System.out.println("default: b = " + b);
}
注意:以上代码使用Java 1.6编译器进行编译。
回答:
与通常一样,范围由{
和分隔}
。
以上是 Java switch:变量声明和作用域 的全部内容, 来源链接: utcz.com/qa/431214.html