![使用Java 8中的功能,转换列表的所有值的最简洁方法是什么?[重复],第1张 使用Java 8中的功能,转换列表的所有值的最简洁方法是什么?[重复],第1张](/aiimages/%E4%BD%BF%E7%94%A8Java+8%E4%B8%AD%E7%9A%84%E5%8A%9F%E8%83%BD%EF%BC%8C%E8%BD%AC%E6%8D%A2%E5%88%97%E8%A1%A8%E7%9A%84%E6%89%80%E6%9C%89%E5%80%BC%E7%9A%84%E6%9C%80%E7%AE%80%E6%B4%81%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F%5B%E9%87%8D%E5%A4%8D%5D.png)
这是我想出的:
给定列表:
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(..)循环更好:
(2)转换并创建新列表IntStream.range(0,keywords.size()) .forEach( i -> keywords.set(i, keywords.get(i).toUpperCase()));
List<String> changed = keywords.stream() .map( it -> it.toUpperCase() ).collect(Collectors.toList());
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)