【技术累积】【点】【java】【2】聊一聊似曾相识的switch语句
闲聊
有些东西并不能像爱因斯坦老先生说的那样,书上查的到就不用去记住...
开始
- java使用了C的所有流程控制语句;
- java中同样有switch语句;
- 大多数情况下,switch都可以用if替换;
好,下面说容易忘掉的,和可能被忽视的一些东西:
- 基本结构(tm我就是忘了怎么写基本结构的,谁让自己依赖ide太多,谁让ide敲switch只有个switch()出来)
switch (表达式) {
case 条件1:
语句1;
break;
case 条件2:
语句2;
break;
...
default:
语句;
}
- 一般流程,switch对象,然后进入case,直到遇到break结束——所以,1、default是默认case;2、一般每个case都写break,不然你可以试试,当然,特殊情况,多个case公用一个case;
- 注意:default不一定写在最后,所以不一定一定不需要break; 保险起见,或者说编程风格来说,请给每一个case加上break;
·
switch (a){
default:
shit.getNum();
case "":
break;
}
- 注意定义格式是这样的
switch(integral-selector) {
case integral-value : statement: break;
case integral-value : statement: break;
...
default:statement;
}
其中integral-selector是指整数选择因子,也就是说是一个定值,比如int,char这种,特殊的有枚举(所以不能直接用的,可以用这个变通),但是复杂类、float这种就不行,比如
·
String a = "a";
switch (a) {
case "a":
break;
}
Shit shit = new Shit();
// switch (shit) {
//
// }
switch (shit.num){
}
switch (shit.getNum()){
}
private class Shit {
int num = 0;
int getNum(){
return this.num;
}
}
integral-value是整数值,也就是要确定的值,所以类的方法这种是不行的(其实这里我还有点疑问。。)
// switch (a){
// case shit.getNum():
// break;
// }
结束
麻雀虽小,五脏俱全。
参考博客:Java switch 详解