if条件控制语句
#
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。所以,我们必须清楚每条语句的执行流程。而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能。
#
顺序结构
分支结构(if, switch)
循环结构(for, while, do…while)
#
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
#
#
格式: if (关系表达式) { 语句体; }
执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为true就执行语句体
③如果关系表达式的值为false就不执行语句体
④继续执行后面的语句内容
示例:

public class IfDemo { public static void main(String[] args) { System.out.println("开始"); // 如果年龄大于18岁, 就可以上网吧 int age = 17; if(age >= 18){ // int a = 10; System.out.println("可以上网吧"); } System.out.println("结束"); } }
#
格式: if (关系表达式) { 语句体1; } else { 语句体2; }
执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为true就执行语句体1
③如果关系表达式的值为false就执行语句体2
示例:奇偶数
任意给出一个整数,请用程序实现判断该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数。
public class Demo2If { public static void main(String[] args) { // 程序判断一个数, 是奇数还是偶数 int num = 9; if(num % 2 == 0){ System.out.println("偶数"); }else{ System.out.println("奇数"); } } }
#
格式: if (关系表达式1) { 语句体1; } else if (关系表达式2) { 语句体2; } … else { 语句体n+1; }
执行流程:
①首先计算关系表达式1的值
②如果值为true就执行语句体1;如果值为false就计算关系表达式2的值
③如果值为true就执行语句体2;如果值为false就计算关系表达式3的值
④…
⑤如果没有任何关系表达式为true,就执行语句体n+1。

/* 示例: 定义一个在0~100之间的变量a, 90~100优秀,80~89良好,70~79中等,60~69及格,0~59请努力加油! */ public class Demo3If { public static void main(String[] args){ int score = 65; if(score >= 90 && score <= 100){ System.out.println("优秀"); }else if (score >= 80 && score <= 89){ System.out.println("良好"); }else if (score >= 70 && score <= 79){ System.out.println("中等"); }else if (score >= 60 && score <= 69){ System.out.println("及格"); }else if (score >= 0 && score <= 59){ System.out.println("请努力加油"); }else{ System.out.println("成绩有误!"); } } }
#

/*需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩,送他不同的礼物,假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。 分析: ①小明的考试成绩未知,可以使用键盘录入的方式获取值 ②由于奖励种类较多,属于多种判断,采用if...else...if格式实现 ③为每种判断设置对应的条件 ④为每种判断设置对应的奖励 */ import java.util.Scanner; public class IfTest02 { public static void main(String[] args){ // 1. 使用Scanner录入考试成绩 Scanner sc = new Scanner(System.in); System.out.println("请输入您的成绩:"); int score = sc.nextInt(); // 2. 判断成绩是否在合法范围内 0~100 if(score >=0 && score <= 100){ // 合法成绩 // 3. 在合法的语句块中判断成绩范围符合哪一个奖励 if(score >= 95 && score <= 100){ System.out.println("自行车一辆"); }else if(score >= 90 && score <= 94){ System.out.println("游乐场一次"); }else if(score >= 80 && score <= 89){ System.out.println("变形金刚一个"); }else { System.out.println("挨顿揍, 这座城市又多了一个伤心的人~"); } }else{ // 非法的话, 给出错误提示 System.out.println("您的成绩输入有误!"); } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)