if:
1、if的基本使用
if (
条件
) {
//
代码块
}
2、if else 的使用
if (
条件
) {
//
代码块
1
}else {
//
代码块
2
}
3、多重if选择结构
if (
条件
) {
//
代码块
1
}else if {
//
代码块
2
}else{
//
代码块3
}
4、嵌套if选择结构
![](https://img-blog.csdnimg.cn/direct/c95be9d86d314aa999ab80ae4b07b2f1.png)
if
(条件
1) {
if
(条件
2) {
代码块
1
} else {
代码块
2
}
} else {
代码块
3
}
switch:
1、switch结构
switch (
表达式
)
{
case
常量
1:
语句
;
break
;
case
常量
2:
语句
;
break
;
…
default:
语句
;
}
//如果需要每个case执行完后跳出,在每个case后不要忘记写break;
//Case后的常量值不能相同
//default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略
![](https://img-blog.csdnimg.cn/direct/47c769a1666842149c88b88362af9566.png)
2、switch 的穿透
switch穿透是一个编程中的现象,具体表现为在使用switch语句时,如果没有在每个case语句后添加break语句,那么程序在执行到一个case语句后,会继续执行下一个case语句,直到遇到break语句或者switch语句结束。
public class Demo_12 {
public static void main(String[] args) {
int month = 11;
switch (month) {
case 11:
// System.out.println("冬天");
// break;
case 12:
// System.out.println("冬天");
// break;
case 1:
System.out.println("冬天");
break;
case 2:
// System.out.println("春天");
// break;
case 3:
// System.out.println("春天");
// break;
case 4:
System.out.println("春天");
break;
case 5:
// System.out.println("夏天");
// break;
case 6:
// System.out.println("夏天");
// break;
case 7:
System.out.println("夏天");
break;
case 8:
// System.out.println("秋天");
// break;
case 9:
// System.out.println("秋天");
// break;
case 10:
System.out.println("秋天");
break;
default:
System.out.println("出错了!!!");
break;
}
}
}
输出结果如下:
![](https://img-blog.csdnimg.cn/direct/a3bb1ac6e1fa41bdaa50eeeb9b143cdf.png)
//由此可知若多个case里输出的内容相同,则只需要保存最后一个case里面的内容即可,其余的可 以省略。
//当 month = 11;时虽然(case 11) 中 的内容被注释掉,但仍会跳转到下一个可以输出内容case 里输出
if和switch的相同点和不同点:
-
相同点:都是用来处理多分支条件的结构
-
不同点:switch 选择结构 只能处理等值条件判断的i情况多重if选择结构 没有switch结构的限制,特别适合某个变量处于某个连续区间时的情况