Java 为什么我的toString方法返回0?
为什么我的Java 为什么我的toString方法返回0?,java,random,tostring,Java,Random,Tostring,为什么我的toString方法返回0?我必须将随机生成的整数连接到字符串上,当我打印结果时,它总是0。我该怎么办 Cozi类: public String toString(){ String concat=""; Clienti ob = new Clienti(); for(int i=1;i <= Clienti.getNrClienti();i++){ concat = " <" + ob.getRandomInt2() + ">
toString
方法返回0?我必须将随机生成的整数连接到字符串上,当我打印结果时,它总是0。我该怎么办
Cozi类:
public String toString(){
String concat="";
Clienti ob = new Clienti();
for(int i=1;i <= Clienti.getNrClienti();i++){
concat = " <" + ob.getRandomInt2() + ">";
System.out.print(concat);
}
return concat;
}
公共字符串toString(){
字符串concat=“”;
Clienti ob=新Clienti();
for(int i=1;i如果返回值为空字符串”
,则表示不输入for
循环。检查条件i
如果我没弄错的话,你想说:
String s = "a";
s = s + "b";
System.out.println(s); // ab
您在这里没有提供足够的详细信息。请提供一个简短但完整的程序来演示此问题。请注意,您没有在循环中使用以前的concat
值,这意味着您将只得到一个
字符串,无论您有多少次循环迭代……我如何获取以前的值g是:我有一个类,在这个类中,我必须有一个方法来连接服务时间。使用StringBuilder
是值得的,但是在我们看到完整的示例之前,要帮助您要困难得多。记住重写toString()
您必须遵守它的约定,即为当前对象提供一个简洁的字符串表示形式。您似乎没有显示任何关于当前对象的信息。那么Clienti.getNrClienti()是什么呢
do?请不要在注释中编写代码。获取所有信息,单击问题下方的编辑按钮,并将其添加到问题中,格式正确。但我必须给concat一个初始值声明String concat=“”
。是的,但您是这样说的你误解了(或者我不清楚):我的意思是,如果你只是获取”
作为返回值,那么程序就没有进入for
循环,因为,即使你在不同的迭代过程中没有连接(如我的回答中所解释的),您仍然将concat
设置为非”
的值。这只是一个推断。我必须计算concat数字,但这些数字是随机生成的。因此我不知道给concat的初始值是什么。然后使用字符串s=“”;
concat=" <"+ob.getRandomInt2()+">";
concat += " <"+ob.getRandomInt2()+">";
String s = "a";
s = "b";
System.out.println(s); // b
String s = "a";
s = s + "b";
System.out.println(s); // ab