Java 我使用循环的toString方法显示缺少元素的输出,如何修复它?
我用BlueJ来做这个,我对toString位有一个问题。我刚刚开始编程,所以如果我不了解所有的技术方面,请原谅。 这是我的代码:Java 我使用循环的toString方法显示缺少元素的输出,如何修复它?,java,loops,tostring,Java,Loops,Tostring,我用BlueJ来做这个,我对toString位有一个问题。我刚刚开始编程,所以如果我不了解所有的技术方面,请原谅。 这是我的代码: public String toString() { String s = "{" + list[0]; for ( int i = 0 ; i < list.length-1 ; i++ ) { i = i+1; s = s + ", " + list[i]; i = i+1;
public String toString()
{
String s = "{" + list[0];
for ( int i = 0 ; i < list.length-1 ; i++ )
{
i = i+1;
s = s + ", " + list[i];
i = i+1;
s = s + ", " + list[i];
i = i+1;
s = s + ", " + list[i];
}
s = s + "}";
return s;
} // method toString
公共字符串toString()
{
字符串s=“{”+列表[0];
对于(int i=0;i
我使用循环是因为我的数组声明为:
public ListOfNVersion01PartB(int [] element)
{
list = new int[element.length];
for (int i=0 ; i<element.length ; ++i )
list[i] = element[i];
} // constructor ListOfNVersion01Skeleton(int [] element)
version01partb的公共列表(int[]元素)
{
列表=新整数[element.length];
对于(int i=0;i而言,问题在于您对i变量没有足够的控制。另一件事是,首先检查您的输入始终是一种良好的做法。我认为以下代码可以帮助您
public String toString(){
if(list == null || list.length==0)return "{}";
StringBuffer sb = new StringBuffer("{"+list[0]);
for(int i=0;i<list.length-1;i++){
sb.append(","+list[i]);
}
sb.append("}");
return sb.toString();
}
公共字符串toString(){
if(list==null | | list.length==0)返回“{}”;
StringBuffer sb=新的StringBuffer(“{”+列表[0]);
对于(inti=0;i来说,一个简单的字符串很容易处理
试试这个
public String toString()
{
String s="{"+list[0];
for(int i=1; i<list.length;i++) //starting at second element since first was placed in string
{
s+=", "+list[i];
}
s+="}";
return s;
}
公共字符串toString()
{
字符串s=“{”+列表[0];
对于(int i=1;i为什么要在for循环中增加循环索引i
?这是一件非常危险的事情。您需要阅读关于for循环如何工作的教程,因为循环中的许多代码行和索引的增加都不应该做。提示:只有当数组长度大于3的倍数。只需执行s+=list[i]
public String toString()
{
String s="{"+list[0];
for(int i=1; i<list.length;i++) //starting at second element since first was placed in string
{
s+=", "+list[i];
}
s+="}";
return s;
}