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

运算符优先级(由高到低)

  1. var++, var--(后缀)
  2. +, -(单目), ++var, --var(前缀)
  3. (type) 强制转换
  4. !(逻辑非)
  5. *, /, %
  6. +, -(二目)
  7. <, <=, >, >=
  8. ==, !=
  9. &(按位与/条件与)
  10. ^(异或)
  11. |(按位或/条件或)
  12. &&(条件与)
  13. ||(条件或)
  14. =, +=, -=, ...(赋值)

结合性

  • 二目运算符(除赋值)左结合
  • 赋值运算符右结合
  • 表达式按从左到右顺序求操作数,副作用前先算左侧

运算顺序规则

  1. 可能的情况下,从左向右依次计算所有子表达式
  2. 根据运算符优先级进行计算
  3. 优先级相同的相邻运算,根据结合方向进行计算