gpt4 book ai didi

java - 尝试使用数组构建 stringBuffer

转载 作者:行者123 更新时间:2023-12-02 13:23:06 26 4
gpt4 key购买 nike

这是我尝试使用数组构建 stringBuffer。我该如何解决这个问题?

import java.util.ArrayList;
public class StringBufferProj {
public static String appendItems(ArrayList list){
StringBuffer b = new StringBuffer();
for (int i=0; i<list.length(); i++) {
b.append(list(i));
b.append(" ");
}
return b.toString();
}

public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add("StringBuilder ");
list.add("executes ");
list.add("multiple ");
list.add("threads ");
list.add("at ");
list.add("a ");
list.add("time ");
System.out.println(StringBufferProj.appendItems(list));
}

}

感谢您的帮助。

最佳答案

首先,对 List 接口(interface)进行编程,并且不要使用原始类型。另外,优先选择 StringBuilder 而不是 StringBuffer,并且您可以使用 for-each 循环。

public static String appendItems(List<String> list) {
StringBuilder b = new StringBuilder();
for (String str : list) {
b.append(str).append(" ");
}
return b.toString();
}

,在 Java 8+ 中,流类似于

public static String appendItems(List<String> list) {
return list.stream().collect(Collectors.joining(" "));
}

然后要调用它,您可以使用

public static void main(String[] args) {
List<String> list = new ArrayList<>(Arrays.asList("StringBuilder ", //
"executes ", "multiple ", "threads ", "at ", "a ", "time "));
System.out.println(appendItems(list));
}

关于java - 尝试使用数组构建 stringBuffer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43482383/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com