我有一个类,该类具有接受字符串的方法。然后,我有一个方法返回上述方法的值。每当我在主类中获得返回值并将其打印时,打印出的值为“ ExamQuestion @ 143c8b3”。如何正确打印?

谢谢

最佳答案

每当您获得格式“ @”时,这就是对象的toString()方法的默认格式。

呼叫System.out.println(question);会呼叫ExamQuestion.toString()。如果不重写该方法,则将调用超类中的版本,在这种情况下,它将是Object的版本。

这就是为什么您会收到ExamQuestion @ 143c8b3。

要解决此问题,请将以下方法放入您的ExamQuestion类:

public String toString() {
    // return a string that means something here
}

10-08 13:00