if与switch(break穿透)
2024-10-09 09:32:36
## if与switch(分支语句)
### 一.if...else if...else
1.语法
if(条件表达式1){
语句体1;
}else if(条件表达式2){
语句体2;
}else{
语句体3;
}
执行流程:
从条件表达式1开始判断,如果为true,执行语句体1;如果为false,执行条件表达式2,否则执行语句体3。
2.案例
输入年份判断闰年还是平年
```java
public class Demo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);//创建扫描器
System.out.println("请输入想要判断的年:");
int year = sc.nextInt();//设置变量接受用户输入的年份
if(year % 4 ==0 && year % 100 !=0 || year % 400 == 0){
System.out.println(year + "是闰年");
}else{
System.out.println(year + "是平年");
}
}
}
```
1.语法
switch(表达式){
case 常量1;
需要执行的语句体1;
break;
case 常量1;
需要执行的语句体1;
break;
......
default:
需要执行的语句体;
break;
}
执行流程:
表达式和case后面的常量值进行比较,和哪个case的值相等,就执行哪个case的语句体;遇到break就结束。(注意事项:写switch时要注意防止break穿透)
2.案例
```java
package com.switch_; public class SwitchDemo3 {
public static void main(String[] args) {
String level="黄金";
switch(level){
case "黑铁":
System.out.println("黑铁");
break;
case "青铜":
System.out.println("青铜");
break;
case "白银":
System.out.println("白银");
break;
case "黄金":
System.out.println("黄金");
break;
default:
System.out.println("其他");
}
}
}
//最终结果为黄金,因为level的值与第四个case的值相匹配,
所以执行里面的语句体,然后遇到break跳出循环,
如果没有break,会穿透,输出的结果就是 黄金 其他
```
最新文章
- C#创建socket服务
- 技术博客(初用markdown)。
- CPU的高速缓存存储器知识整理
- ngrok反向代理
- ALV详解:OO SALV
- java程序用做windows服务
- ASP.NET 学习博客
- 导入表数据 txt
- 无缝滚动 jQuery经典代码 (收藏)
- mysql配置主从数据库
- Go基础
- [2014-02-23]Asp.net Mvc分布式Session存储方案
- JS中使用正则表达式替换对象里的大小写
- 实现Windows程序的更新
- JS基础速成(一)
- git在项目中的实际运用
- SHELL脚本--shell数组基础
- REST framwork之分页器,路由器,响应器
- 转://执行impdp时出现ORA-39154错误的解决案例
- 三连击(NOIP1998)