我只是想知道Java中的switch语句中是否必须包含默认情况.我理解包含默认案例是一种好习惯.我问的原因是因为对于下面的代码,如果我删除默认情况,代码将提供错误.有人可以帮我澄清这个概念吗?在此先感谢您的帮助!
public class SwitchDemo { public static void main(String[] args) { int mOnth= 8; String monthString; switch (month) { case 1: mOnthString= "January"; break; case 2: mOnthString= "February"; break; case 3: mOnthString= "March"; break; case 4: mOnthString= "April"; break; case 5: mOnthString= "May"; break; case 6: mOnthString= "June"; break; case 7: mOnthString= "July"; break; case 8: mOnthString= "August"; break; case 9: mOnthString= "September"; break; case 10: mOnthString= "October"; break; case 11: mOnthString= "November"; break; case 12: mOnthString= "December"; break; default: mOnthString= "Invalid month"; //if delete will produce error break; } System.out.println(monthString); } }
Eran.. 7
虽然该default
子句不是强制性的,但如果删除它,则monthString
可能无法初始化,因此当您尝试使用该子句进行打印时会出现编译错误System.out.println(monthString);
.
default
如果monthString
在声明时给出默认值,则可以删除该子句.例如 :
String mOnthString= "Invalid month";
这将提供与当前switch语句相同的行为,其中包括default子句.
虽然该default
子句不是强制性的,但如果删除它,则monthString
可能无法初始化,因此当您尝试使用该子句进行打印时会出现编译错误System.out.println(monthString);
.
default
如果monthString
在声明时给出默认值,则可以删除该子句.例如 :
String mOnthString= "Invalid month";
这将提供与当前switch语句相同的行为,其中包括default子句.