听起来有点愚蠢,但我的 toString()
方法需要帮助,这很烦人。我试着在网上查找,因为 toString
是它搞砸了的地方,“找不到 Kid constructor #2”,即使它在那里,我什至会做其他事情,但它不起作用。好的,所以这是我的代码:
import java.util.*;
class Kid {
String name;
double height;
GregorianCalendar bDay;
public Kid () {
this.name = "HEAD";
this.height = 1;
this.bDay = new GregorianCalendar(1111,1,1);
}
public Kid (String n, double h, String date) {
// method that toString() can't find somehow
StringTokenizer st = new StringTokenizer(date, "/", true);
n = this.name;
h = this.height;
}
public String toString() {
return Kid(this.name, this.height, this.bDay);
}
} //end class
好的所以我上面的 toString(我知道,我的第三个参数是关闭的,应该是一个字符串)关闭了。如果我为第三件事硬编码一个值,它就会失控并说它找不到这个(上面)。那么我怎样才能得到日期并将其分解呢?
调用这个的类在下面
class Driver {
public static void main (String[] args) {
Kid kid1 = new Kid("Lexie", 2.6, "11/5/2009");
System.out.println(kid1.toString());
} //end main method
} //end class
我尝试研究多个构造函数,但确实没有帮助。我尝试研究 toString()
方法,并尝试使用以前创建的 toString()
方法逻辑,但这是全新的,所以它从未奏效。
帮助?
原文由 user1283885 发布,翻译遵循 CC BY-SA 4.0 许可协议
toString
应该返回String
。我建议您利用 IDE 的功能来生成
toString
方法。不要手动编码。例如,如果您只需右键单击源代码并选择
Source > Generate toString
,Eclipse 就可以这样做