Java程序设计-Chap 3 控制语句
来源:田浩然上传资料 / 1B003_JAVA程序设计/ppt/2008-02/03.pdf
核心内容
Java 控制语句章节,涵盖布尔类型、选择结构与运算符规则。
关键知识点
boolean 类型与比较运算符
- 六种比较运算符:
< <= > >= == != - 比较结果均为
boolean值 - 示例:
boolean b = (1 > 2);
布尔运算符
!(非)、&&(与)、||(或)、^(异或)- 真值表规则详见原文
& 与 &&、| 与 || 的区别
&&/||:条件运算符(短路)&/|:非条件运算符(始终计算两侧)- 副作用场景下求值顺序影响结果:
(x > 1) & (x++ < 10)vs(x > 1) && (x++ < 10)
if 语句
- 单分支
if、双分支if-else、多分支if-else if-else - 注意:
if后加分号是常见逻辑错误 else总是匹配最近的if
switch 语句
- 表达式类型:
char/byte/short/int case后为常量表达式,不能含变量break可选但建议每个 case 末尾加上default可选,置于末尾为佳
条件运算符(三元)
(booleanExp) ? exp1 : exp2- 等价替换:
if (num % 2 == 0) System.out.println(...); else ...;→System.out.println((num % 2 == 0)? ... : ...);
格式化输出
System.out.printf(format, items)(JDK 1.5+)String.format(format, items)生成字符串- 常用格式符:
%b %c %d %f %e %s
运算符优先级(由高到低)
var++, var--(后缀)+, -(单目), ++var, --var(前缀)(type)强制转换!(逻辑非)*, /, %+, -(二目)<, <=, >, >===, !=&(按位与/条件与)^(异或)|(按位或/条件或)&&(条件与)||(条件或)=, +=, -=, ...(赋值)
结合性
- 二目运算符(除赋值)左结合
- 赋值运算符右结合
- 表达式按从左到右顺序求操作数,副作用前先算左侧
运算顺序规则
- 可能的情况下,从左向右依次计算所有子表达式
- 根据运算符优先级进行计算
- 优先级相同的相邻运算,根据结合方向进行计算