java – 将for循环转换为一个lambda表达式的concat String
发布时间:2020-12-14 05:15:39 所属栏目:Java 来源:网络整理
导读:我有以下for循环遍历一个字符串列表,并将每个单词的第一个字符存储在StringBuilder中.我想知道如何将其转换为lambda表达式 StringBuilder chars = new StringBuilder();for (String l : list) { chars.append(l.charAt(0));} 解决方法 假设您在StringBuilder
我有以下for循环遍历一个字符串列表,并将每个单词的第一个字符存储在StringBuilder中.我想知道如何将其转换为lambda表达式
StringBuilder chars = new StringBuilder(); for (String l : list) { chars.append(l.charAt(0)); } 解决方法
假设您在StringBuilder之后调用toString(),我认为您只是在将每个字符串映射到单字符子字符串之后寻找
Collectors.joining() :
String result = list .stream() .map(s -> s.substring(0,1)) .collect(Collectors.joining()); 示例代码: import java.util.*; import java.util.stream.*; public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("foo"); list.add("bar"); list.add("baz"); String result = list .stream() .map(s -> s.substring(0,1)) .collect(Collectors.joining()); System.out.println(result); // fbb } } 注意使用子字符串而不是charAt,所以我们仍然有一串字符串来处理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |