我刚刚注意到您可以执行 System.out.println(FooObject.fooNumber = 4);
这会将 4 分配给 fooNumber 并输出值 4。为什么它在之后输出 FooNumber任务?
此外,优先规则规定赋值先发生,但没有说明打印先发生还是赋值先发生。我对吗?那么为什么不先打印前一个值然后再赋值呢?据我所知,子表达式在 Java 中是从左到右求值的,所以这在此处适用吗?
最佳答案
这是有效的 Java 语法,用于执行内联赋值语句,然后返回分配的值。使用此语法的一个常见示例是读取文件:
while ((str = in.readLine()) != null) {
process(str);
}
关于Java,System.out.println() 里面有一个赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7195038/