Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我的toString方法返回0?_Java_Random_Tostring - Fatal编程技术网

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