理解 Java 表达式、语句与代码块
理解 Java 表达式、语句与代码块
本指南通过实战示例解释 Java 表达式、语句和代码块,依据 Java 语言规范 (JLS) 提供权威清晰度。
前几章我们使用表达式、语句和代码块时未深究其机制。现在你已熟悉变量、运算符和字面量,让我们深入探索这些核心概念。
Java 表达式
Java 表达式由变量、运算符、字面量和方法调用组合而成,产生一个值。例如:
int score;
score = 90;
此处 score = 90 是求值为 int 的表达式。另一例:
Double a = 2.2, b = 3.4, result;
result = a + b - 3.4;
此片段中,a + b - 3.4 是产生 Double 的算术表达式。表达式也可产生布尔值,如条件判断中:
if (number1 == number2)
System.out.println("Number 1 is larger than number 2");
此处 number1 == number2 返回布尔值,println 中的字符串是字符串字面量表达式。
Java 语句
语句是完整的执行单元。例如:
int score = 9*5;
此语句将 9 乘 5 并将结果赋给 score。注意表达式 9 * 5 嵌入在语句中。
表达式语句
任何表达式加分号 (;) 即成为语句,称为表达式语句。例如:
// 表达式
number = 10
// 语句
number = 10;
此处 number = 10 是表达式;加分号后变为语句。自增运算符同理:
// 表达式
++number
// 语句
++number;
两种形式均有效,但仅后者在运行时执行。
声明语句
Java 用声明语句创建变量。示例:
Double tax = 9.5;
此语句声明变量 tax 并初始化为 9.5。声明语句对类型安全至关重要,定义于 JLS §4.2。
提示:控制流语句 —— 如 if、for、while —— 后续介绍。它们控制决策和循环。
Java 代码块
代码块将零或多个语句包裹在花括号 ({ }) 内。示例:
class Main {
public static void main(String[] args) {
String band = "Beatles";
if (band == "Beatles") {
// 代码块开始
System.out.print("Hey ");
System.out.print("Jude!");
} // 代码块结束
}
}
输出:
Hey Jude!
代码块 if { … } 包含两条语句。代码块也可为空:
class Main {
public static void main(String[] args) {
if (10 > 5) {
// 代码块开始
} // 代码块结束
}
}
即使无语句,代码块在语法上也有效。同样,方法体可为空块:
class AssignmentOperator {
public static void main(String[] args) {
// 代码块开始
} // 代码块结束
}
代码块定义于 JLS §14,是作用域和控制流的基础。
java
- C# 表达式、语句与代码块:全面指南与实战示例
- Java 变量与字面量:全面指南
- 精通 Java 输入输出:打印、读取与格式化数据
- 理解 Java 表达式、语句与代码块
- Java 类与对象:实用指南
- Java 抽象类与抽象方法完全指南
- 精通 Java 嵌套类与内部类:类型、示例与最佳实践
- Java throw 与 throws 深度解析:异常处理实战指南
- 掌握 Java 自动装箱与拆箱:实战示例与最佳实践
- 掌握 Java Lambda 表达式:从基础到 Stream API 实战
- Java 字符串替换大全:replace()、replaceAll() 与 replaceFirst() 详解
- Java String toLowerCase() 与 toUpperCase():区域感知的大小写转换