【发布时间】:2013-03-29 11:10:29
【问题描述】:
这是我目前的 toString 方法
StringBuilder string = new StringBuilder();
for (int i = 0; i < knowledgeD.size(); i++ ){
w = knowledgeD.get(i).get(0);
y = knowledgeD.get(i).get(1);
string.append("{true@" + w + ","+" " +"false@" + w.complement() + "}" + "@" + y);
string.append("" +","+" ");
//{{true@1/4, false@3/4}@1/2, {true@2/3, false@1/3}@3/16, {true@4/5, false@1/5}@5/16}
//{{true@1/4, false@3/4}@1/2, {true@2/3, false@1/3}@3/16, {true@4/5, false@1/5}@5/16, }
}
String s = string.toString();
String g = "{" + s + "}";
return g;
这会返回 g,这是 string.append 下的第二条评论,我需要它来返回上面的评论,但我一生都无法弄清楚如何摆脱对最后一个字符串的评论而只是在那里有一个括号,因为这个 Arraylist 是可更新的,所以字符串的最后一部分,即
{true@4/5, false@1/5}@5/16, }
也被添加了,它需要有一个逗号并遵循 toString 的模式。
我不知道如何在最后一个字符串部分去掉这个逗号,谁能解释一下。
【问题讨论】:
-
在
Strings 上使用+运算符有点破坏StringBuilder的目的。 -
你可以链接 StringBuilder.append("...").appened("...")... (offtopic)
标签: java string arraylist tostring