【发布时间】:2022-12-12 21:07:44
【问题描述】:
public class Test {
public static void main (String[] args) {
Long a = (long) 1;
Long b = (long) 2;
Long c = ++a + b++;
System.out.println(a + " " + b + " " + c);
}
}
首先我认为会有 3 个对象(a、b 和c),但我不确定c 是否是一个不依赖于a 和@987654327 的独立对象@.另外,我不确定是否存在其他对象。
【问题讨论】:
-
你甚至不数弦?
-
@Stultuske 这是否意味着总共会创建 5 个对象?
-
甚至可能有一些由中间计算创建的对象,如字符串连接和加法。顺便说一句,不要写像
++a + b++这样的代码;它不必要地复杂,实际上可能会引发未定义的行为。 -
更多的。 " " -> 一个。 a + " " -> 二 a + " " " -> 三 a + " " + b -> 四 a + " " + b + " " -> 五 a + " " + b + " " + c -> 六。这只是字符串。变量和对象是不一样的。