如何转换LinkedList,例如:
5=>2=>2=>1
到诸如
之类的字符串"1225"
我是java的新手,但我的猜测是弹出列表并使用StringBuilder。我只是不确定如何正确使用StringBuilder。
public String toString()
{
StringBuilder sb = new StringBuilder();
for(int i=0; i <getNumberOfDigits(); i++)
{
sb.append(list.pop());
}
String toReturn = sb.toString();
return toReturn;
}
编辑: 我不是要对列表进行排序,我只是想以相反的顺序打印出来。
答案 0 :(得分:3)
StringBuilder API文档可用here。您只需要创建它然后调用append方法。然后,您可以使用toString将其转换。
StringBuilder string = new StringBuilder();
Iterator<?> it = list.descendingIterator();
while (it.hasNext()) {
string.append(it.next());
}
System.out.println(string);
答案 1 :(得分:0)
您可以使用这样的LambdaJ排序功能:
List<Integer> list = sort(list, on(Integer.class).getItem());
然后你也可以使用老朋友 Apache common :
String str = StringUtils.join(list);
或使用番石榴:
String str = Joiner.on("").join(list);
或 LambdaJ :
String result = join(list, "");