Java 语句也是表达式,请说明
Java statements which are also expressions, please explain
请帮我从纯术语的角度解释这句话:
“从技术上讲,由于变量赋值可以用作进一步赋值或操作的值,因此可以将它们视为语句和表达式。”
技术上是什么意思?什么不是技术?
如果
a = (b = 1);
我们知道的:
a = (b = 1);
是声明。
(b = 1)
是一个表达式。
问题 1:
是
a = (b = 1);
也是表情?
或者它只是一个表达式,这样写
一 = (乙 = 1)
没有分号并在另一个语句或表达式中使用?
问题 2:
是
(b = 1)
也是一个声明(假设它是一个任务)?或者每个语句必须以 ; 结尾?
问题三
b是一个表达式吗
(b = 1)
或者它只是一个变量?
1是一个表达式在
(b = 1)
或者它只是一个文字?
是一个表达式
一 = (乙 = 1)
或者它只是一个变量?
关于第 3 季度的一些说明:
我想当文字和变量单独存在时可以是表达式。例如在语句中:
a = 1;
1 是一个表达式。
但是对于示例语句的 1 个内部表达式是否也是如此:
a = (b = 1);
表达式是任何可以计算为值的东西,因此 a = (b = 1)
是一个表达式(它是一个 assignment expression,其中右侧操作数是另一个赋值表达式)。
代码a = (b = 1);
是一条语句;注意它末尾的分号 ;
。具体来说,就是一个expression statement。表达式语句是通过编写一个表达式后跟一个分号而形成的语句。 (并非所有类型的表达式都允许作为表达式语句,例如 1 + 1;
不是有效语句。)
所以严格来说,分号使两段代码不同。但是,如果我们不正式,那么我们可以说 a = (b = 1)
可以写成表达式或语句。
要回答关于什么是或不是语句或表达式的其他问题,我建议查看 Java 语言规范:
请帮我从纯术语的角度解释这句话:
“从技术上讲,由于变量赋值可以用作进一步赋值或操作的值,因此可以将它们视为语句和表达式。”
技术上是什么意思?什么不是技术? 如果
a = (b = 1);
我们知道的:
a = (b = 1);
是声明。
(b = 1)
是一个表达式。
问题 1:
是 a = (b = 1); 也是表情? 或者它只是一个表达式,这样写 一 = (乙 = 1) 没有分号并在另一个语句或表达式中使用?
问题 2:
是 (b = 1) 也是一个声明(假设它是一个任务)?或者每个语句必须以 ; 结尾?
问题三
b是一个表达式吗 (b = 1) 或者它只是一个变量?
1是一个表达式在 (b = 1) 或者它只是一个文字?
是一个表达式 一 = (乙 = 1) 或者它只是一个变量?
关于第 3 季度的一些说明:
我想当文字和变量单独存在时可以是表达式。例如在语句中:
a = 1;
1 是一个表达式。
但是对于示例语句的 1 个内部表达式是否也是如此:
a = (b = 1);
表达式是任何可以计算为值的东西,因此 a = (b = 1)
是一个表达式(它是一个 assignment expression,其中右侧操作数是另一个赋值表达式)。
代码a = (b = 1);
是一条语句;注意它末尾的分号 ;
。具体来说,就是一个expression statement。表达式语句是通过编写一个表达式后跟一个分号而形成的语句。 (并非所有类型的表达式都允许作为表达式语句,例如 1 + 1;
不是有效语句。)
所以严格来说,分号使两段代码不同。但是,如果我们不正式,那么我们可以说 a = (b = 1)
可以写成表达式或语句。
要回答关于什么是或不是语句或表达式的其他问题,我建议查看 Java 语言规范: