return 与 switch 同时使用时注意事项
代码示例
public String getName(int i) {
switch(i) {
case 1:return "小明";break; //提示错误
case 2:return "小红";break; //提示错误
case 3:return "小强";break; //提示错误
default: return null;break; //提示错误
}
}
在使用switch时,如果基础不是特别扎实或不细心,容易犯以上错误。由于使用switch的习惯是与 break 同时使用,所以一般我们都会在case语句后加上break,但是上述代码范例中,存在return进行返回,故break不会再执行,因此此时系统会报错,“Unrechable code”,无法执行的代码。
此类情况下,switch不需要与break连用。
代码去掉 break后,可执行。
public String getName(int i) {
switch(i) {
case 1:return "小明"; //正确代码
case 2:return "小红"; //正确代码
case 3:return "小强"; //正确代码
default: return null; //正确代码
}
}
平行展开,return在循环中和与continue同时使用时,也会有类似情况出现,return返回后,方法结束,后面的语句将不再执行。