提问人:Aadivya 提问时间:2/15/2023 最后编辑:alcanAadivya 更新时间:2/15/2023 访问量:43
在 Java 中,在更大的算术表达式中使用赋值运算符的语法如何有效?
How is it valid syntax in Java to use an assignment operator in a larger arithmetic expression?
问:
背景:我主要是一名 Javascript/Python 开发人员,我做 Java 只是为了功课。
这是让我感到困惑的代码块。
public static void display(int a, int b) {
a = a+b-(b=a);
System.out.println(a);
System.out.println(b);
}
我在练习考试中遇到了这个代码块。我以为这在语法上是不正确的,所以我用编译器尝试了一下。未出现语法错误。
我不明白这是有效的语法。我得到赋值运算符将赋值给,结果将是 的原始值。编译器如何注册为有效代码段?a
b
a = a+b-(b=a)
a
b-(b=a)
答: 暂无答案
评论
b=a
赋值并计算 的新值。b
b
= a+b-(b=a)
的结果将是 a 的原始值 - 否,结果是等于之前的值。整个结构类似于 Python:a + b - a
b
a, b = b, a
for( int c; (c = stream.read()) != -1; )