面试题答案
一键面试import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class StringBuilderStreamExample {
public static void main(String[] args) {
List<String> list = Arrays.asList("a", "b", "c");
StringBuilder result = list.stream()
.collect(StringBuilder::new, StringBuilder::append, StringBuilder::append);
System.out.println(result.toString());
}
}
上述代码中,list.stream()
将 List
转换为流。collect
方法接收三个参数:
StringBuilder::new
:这是一个构造函数引用,用于创建一个新的StringBuilder
对象。StringBuilder::append
:这是一个实例方法引用,用于将流中的每个字符串追加到StringBuilder
对象中。StringBuilder::append
:这是一个实例方法引用,用于合并两个StringBuilder
对象。在并行流处理时会用到,将多个局部StringBuilder
合并成一个最终的StringBuilder
。最终通过collect
方法得到拼接好字符串的StringBuilder
对象。