小白成神day5
顺序结构
- java的基本结构就是顺序结构,除非特别指明,否则就按照顺序逐句执行
- 顺序结构是最简单的算法结构
- 语句与语句之间,框与框之间是按从上到下的顺序进行的,他是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构
选择结构
if单选择结构
if(布尔表达式) { //如果布尔表达式为true将执行的语句 }

代码演示:
import java.util.Scanner; public class ifDemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入内容:"); String s = scanner.nextLine(); if(s.equals("hello") ) { //equals:判断字符串是否相等 System.out.println(s); } System.out.println("end"); scanner.close(); } }
输出结果:

if双选择结构
if(布尔表达式){ //如果布尔表达式的值为true }else{ //如果布尔表达式的值为false }

代码演示:
import java.util.Scanner; public class ifDemo02 { public static void main(String[] args) { //成绩分数大于等于60分,及格,小于60分不及格 Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if (score>=60){ System.out.println("及格"); }else { System.out.println("不及格"); } scanner.close(); } }
输出结果:
请输入成绩: 60 及格
if多选择结构
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 }else if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 }else if(布尔表达式3){ //如果布尔表达式3的值为true执行代码 }else{ //如果布尔表达式都不为true执行代码 }

代码演示:
import java.util.Scanner; public class ifDemo03 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if(score==100){ System.out.println("恭喜满分"); } else if (score<100 && score>=90) { System.out.println("A级"); } else if (score<90 && score>=80) { System.out.println("B级"); } else if (score<80 && score>=70) { System.out.println("C级"); } else if (score<70 && score>=60) { System.out.println("D级"); } else if (score<60 && score>=0) { System.out.println("成绩不合格"); }else{ System.out.println("成绩不合法"); } scanner.close(); } }
注意:
if语句至多有1个else语句,else语句在所有的else if语句后。
if语句可以有若干个else if语句,它们必须在else语句之前。
一旦其中一个else if语句检测为true,其他的else if以及else语句都将跳过执行。
嵌套的if结构
使用嵌套的if...else语句是合法的,也就是说你可以在另一个if或者else if语句中使用if或者else if语句。
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 } }
代码演示:
public class ifDemo04 { public static void main(String[] args) { int x = 30; int y = 10; if( x == 30 ){ if( y == 10 ){ System.out.print("X = 30 and Y = 10"); } } } }
输出结果:
X = 30 and Y = 10
Switch多选择结构
- 多选择结构还有一个实现方式就是switch case语句
- switch case语句判断一个变量与一系列值中某个值是否相等,每一值称为一个分支
switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可选 //你可以有任意数量的case语句 default : //可选 //语句 }
switch case语句有如下规则:
- switch 语句中的变量类型可以是: byte、short、int 或者 char。
- switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
- case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。
- 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
- 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
- switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。
public class switchDemo01 { public static void main(String[] args) { char grade = 'A'; switch (grade){ case 'A': System.out.println("优秀"); break; case 'B': System.out.println("良好"); break; case 'C': System.out.println("及格"); break; case 'D': System.out.println("再接再厉"); break; default: //匹配不成功则会选择默认 System.out.println("输入错误"); } System.out.println("你的等级是 " + grade); } }
输出结果:
优秀
你的等级是A
- 若不加breal语句,则会造成case穿透,从当前 case 开始,后续所有 case 的值都会输出。
- 如果当前匹配成功的 case 语句块没有 break 语句,则从当前 case 开始,后续所有 case 的值都会输出,如果后续的 case 语句块有 break 语句则会跳出判断。

从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
代码演示:
public class switchDemo02 { public static void main(String[] args) { String name = "恁爹"; switch (name){ case "尼玛": System.out.println("对了"); break; case "恁爹": System.out.println("找尼玛去"); break; default: System.out.println("弄啥嘞"); } } } //字符的本质还是数字
输出结果:
找尼玛去
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!