class Demo {
public static void main(String[] args) {
int a; // declaration statement
a = 5; // initialization statement/expression?
}
}
我调查了它,它似乎既是一个陈述又是一个表达。这是真的?有没有关于此的文件?
答案 0 :(得分:4)
局部变量声明 - 有或没有初始化 - 是一个语句,如section 14.4 of the JLS中所述。
重要的是要注意,这是 not 一个表达式,就像一个简单的赋值表达式一样 - 你不能将它用作一个更大的语句(块除外)的一部分。例如:
int x;
System.out.println(x = 5); // Prints 5
System.out.println(int x = 10); // Invalid
答案 1 :(得分:2)
赋值是Java中的表达式和语句。赋值的值是赋给其变量的值。这允许您执行多项任务,例如:
a = b = 5;
赋值b = 5
被视为值为5的表达式,因此可以在同一语句中将值赋给a
。
答案 2 :(得分:1)
有没有关于此的文件?
它可能对您有所帮助Oracle Doc - Expressions, Statements, and Blocks
表达式是由变量,运算符和方法调用组成的构造,它们是根据语言的语法构造的,其值为单个值。
陈述大致相当于自然语言中的句子。声明形成一个完整的执行单元。通过使用分号(;)终止表达式,可以将以下类型的表达式转换为语句。
此类陈述称为表达式语句。
除表达式语句外,还有另外两种语句:
声明语句声明一个变量。例如
// declaration statement
double aValue = 8933.234;
块是平衡大括号之间的一组零个或多个语句,可以在允许单个语句的任何地方使用。
答案 3 :(得分:0)
分配是语句。它将右侧表达式的结果保存到左侧的变量中。