java中的switch语句面试相关

switch的简单写法:
switch(A) {
    case B;
}

首先,A部分值必须是int型的,或者是能够自动进行转换成int型的表达式。也就是说A部分可以是 byte\short\char\int型的。
其次,B部分的值必须是单个byte\short\char\int型的值,或者是final型的变量。
但是final型的变量是有要求的,它必须是编译时的常量,怎么讲呢,看下面的程序段:
final int a = 0;
final int b;
第二个语句就是在编译时不能够被识别出值的变量,因为它没有初始化,当然,这条语句也是错误的。
所以总结case后的值可以是常数值或final型的值。

你可能感兴趣的:(java,面试)