gpt4 book ai didi

Java - 为什么以下代码打印出 "BAC"而不是 "ABC"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:05:22 25 4
gpt4 key购买 nike

请帮助我理解这段代码。我是 Java 的新手。

// C.java
class C {
public static void main(String arg[]) {
System.out.println("A"+new C());
}
public String toString() {
System.out.print("B");
return "C";
}
}
// output:
// BAC

最佳答案

评估是这样的:

Call println("A" + new C())
Since new C() hasn't been computed yet, we need to compute it, so...
Compute new C().toString()
Print "B"
Print line with "A" + "C"

可以看到,打印语句的顺序是“B”、“A”、“C”

关于Java - 为什么以下代码打印出 "BAC"而不是 "ABC"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6893625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com