选择
程序可以基于条件决定执行哪些语句。
布尔表达式是指计算结果为Boolean值:true or false
的表达式
boolean数据类型
boolean数据类型声明一个具有值true或false的变量。
relational operator
< 小于 <= 小于等于 > 大于 >= 大于等于 == 等于 != 不等于
if语句 - 允许程序确定执行的路径
Java中选择语句类型:
No. | DESC |
---|---|
1.0 | 单分支if语句 |
2.0 | 双分支if-else语句 |
3.0 | 多分支if-else语句 |
4.0 | 嵌套if-else语句 |
5.0 | switch语句 |
6.0 | 条件表达式 |
if(i > 0){ System.out.println("i is positive"); } if(i > 0) // 省略花括号 与上面👆代码等价 System.out.println("i is positive");
省略括号可以让代码更加清晰,但是更容易产生错误eg: 不加括号要记住
else
之和最近的if
相匹配。
逻辑操作符(logic operator)
操作符 | 名称 | 说明 |
---|---|---|
! |
非 | 逻辑非 |
&& |
与 | 逻辑与 |
` | ` | |
^ |
异或 | 逻辑异或 |
异或
^
: 满足相同为真 相异为假
- 德魔佛定理
!(condition1 && condition2) 等价于 (!condition1 || !condition2) !(condition! || condition2) 等价于 (!condition && !condition2) eg: !(number % 2 == 0 && number % 3 == 0) 等价于 (number % 2 != 0 || number % 3 != 0)
从数学角度看 0 <= day <= 24 是正确的但在Java之中要通过两个表达式要表示 即: (day >= 0) && (day <= 24)
switch语句 - 基于变量和表达式的值来执行的语句
switch(switch表达式){ case v1: 语句1; break; case v2: 语句2; break; case v3: 语句3; break; ...... default: 默认情况下执行的语句(组)
switch语句所遵循的原则:
- switch表达式必须能够计算出【byte、short、int、char、String】类型的值
- 当switch表达式的值与case语句的值相匹配的时候,执行从该case开始的语句,直到遇到一个break语句或到达该switch语句的结束。
- 默认情况(default)是可选的,当没有一个给出的case与switch表达式匹配时用来执行该操作。
- 关键字break是可选的。break语句会立即终止switch语句
一般符合条件之后都要添加break语句,否则要添加一定的注释来说明原因。
从匹配case处开始执行,直到遇到break语句或到达switch语句的结束。 这种现象称之为 落空行为(fall-through behavior)
条件表达式 - 三元操作符(ternary operator) 也是 Java中唯一的三元操作符
boolean-expression ? expression01 : expression02; // (布尔表达式 ? 表达式01 : 表达式02) // boolean-expression为true的情况 跳转到 【expression01】 // boolean-expression为false的情况 跳转到 【expression02】
学而不思则罔,思而不学则殆!
分类:
《Java语言程序设计》
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具