gpt4 book ai didi

java - 为什么应用于该对象的 System.out.println 会打印这个短语?

转载 作者:行者123 更新时间:2023-12-02 01:10:56 28 4
gpt4 key购买 nike

下面我有两个类。当我运行 TestSimple 类时,它打印出“blueblueblue 是蓝色重复的”。该打印语句执行为 System.out.println(item)这是 Simple() 的一个实例类(class)。我以前从未见过一个对象作为短语打印出来,而且我很难确定为什么会发生这种情况。

我看到Simple中有一个方法类名为 toString它应该在调用时打印出来,但我没有看到该方法在任何地方被调用。这是怎么回事?

public class Simple {
private String word;
private String phrase;
public Simple(int number, String w) {
word = w;
phrase = mystery(number, w);
}
private String mystery(int num, String s) {
String answer = "";
for (int k=0; k<num; k++) {
answer = answer + s;
}
return answer;
}

public String toString() {
return phrase + " is " + word + " repeated";
}
}

public class TestSimple{
public void print() {
Simple item = new Simple(3, "blue");
System.out.println(item);
}

public static void main(String[] args) {
new TestSimple().print();
}
}

最佳答案

System.out PrintStream , PrintStream.println(Object) (来自链接的 Javadoc)首先调用 String.valueOf(x)获取打印对象的字符串值 String.valueOf(Object) 返回 obj.toString() 的值

关于java - 为什么应用于该对象的 System.out.println 会打印这个短语?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59418083/

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