为什么我的toString
方法返回0?我必须将随机生成的整数连接到String上,当我打印结果时,它总是为0.我该怎么办?
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;
}
班Clienti:
public int serviceTime(){
System.out.print("\n");
Random randomServ = new Random();
for (int idx = 1; idx <= nrClienti; ++idx){
randomInt2 = randomServ.nextInt(maxServ);
System.out.println("Generated : " + randomInt2);
}
return randomInt2;
}
我还有方法get和set randomInt2。
我知道为什么我只得到0.因为randomInt2在Clienti类中声明为int,而不是私有静态int。现在我遇到的问题是我的concat对象只获取randomInt2的最后一个值。有什么建议吗?
答案 0 :(得分:2)
如果您有一个空字符串""
作为返回值,则表示您没有进入for
循环。检查是否符合任何i <= Clienti.getNrClienti()
条件i
。
for
循环中存在错误,您必须修改:
concat=" <"+ob.getRandomInt2()+">";
通过
concat += " <"+ob.getRandomInt2()+">";
注意:当您想要连接String
时,您可以使用性能更高的StringBuilder
。
答案 1 :(得分:0)
String s = "a";
s = "b";
System.out.println(s); // b
如果我说得对,你想要结束:
String s = "a";
s = s + "b";
System.out.println(s); // ab