使用Java 8中的功能,转换列表的所有值的最简洁方法是什么?[重复]

使用Java 8中的功能,转换列表的所有值的最简洁方法是什么?[重复],第1张

使用Java 8中的功能,转换列表的所有值的最简洁方法是什么?[重复]

这是我想出的:

给定列表:

List<String> keywords = Arrays.asList("Apple", "Ananas", "Mango", "Banana", "Beer");
(1)就地改造

也许我很想念它,似乎没有一种“应用”或“计算”方法需要lambda作为List。因此,这与旧Java相同。我想不出Java 8的更简洁或有效的方法。

for (int n = 0; n < keywords.size(); n++) {    keywords.set(n, keywords.get(n).toUpperCase());}

尽管有这种方法比for(..)循环更好:

IntStream.range(0,keywords.size())    .forEach( i -> keywords.set(i, keywords.get(i).toUpperCase()));
(2)转换并创建新列表
List<String> changed = keywords.stream()    .map( it -> it.toUpperCase() ).collect(Collectors.toList());


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5429927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存