switch的语句一般形式如下:
switch (x){
case a://ok
case b://compiler errorswitch (expression)
{
case constant1: code block
case constant2: code block
default: code block0
}
switch的表达式结果必须为:char、byte、short、int,或者,从Java 5起,也可以为enum。这意味着如果没有使用enum,则只有能够被自动提升(换句话说,饮食强制转换)为int的变量和值才是可以接受的。如果使用任何其他类型,包括long、float和double等类型,都不能编译。
case常量必须与switch表达式可用的类型相同,还有一个额外的——并且是一个重大的——约束:case常量必须是编译时常量!因为case参数必须在编译时解析,这意味着只能使用常量或者被赋予字面量的find变量。例如:
final int a = 1;
final int b;
b = 2;
int x = 0;
}
--未完待续--