为了账号安全,请及时绑定邮箱和手机立即绑定

Java 中的 ArrayList 是否有其他方法可以使用 Stream() 来实现?

Java 中的 ArrayList 是否有其他方法可以使用 Stream() 来实现?

撒科打诨 2023-10-13 10:33:37
当我正在寻找一种方法来很好地逐个打印出数组时,我找到了该Arrays.stream(array)方法,它可以按照我想要的方式打印出数组。但问题是,我有一个动态数组,上面提到的方法不起作用。那么ArrayList有没有类似的方法呢?String line;BufferedReader bufferedReader = new BufferedReader(new FileReader(list));List<String> lines = new ArrayList<>();while ((line = bufferedReader.readLine()) != null) {    lines.add(line);}bufferedReader.close();Arrays.stream(lines).forEach(System.out::println);最后一行是按照我想要的方式打印出数组的行,但没有动态数组。我也知道System.out.println(line)在正文中添加 an 的替代方法while。
查看完整描述

2 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

ArrayList正在流式传输已经有一个stream()方法:

lines.stream().forEach(System.out::println);

Arrays.stream()是用于实际数组,如String[]、等int[]。另一方面是 a并且集合有一个方法。MyObject[]ArrayListCollectionstream


查看完整回答
反对 回复 2023-10-13
?
www说

TA贡献1775条经验 获得超8个赞

从关卡界面开始Collection,你就有了.stream()方法。但是,就您而言,您只需使用.forEach(). 每个实现的类Iterable都有这个方法。


List<String> myList = new ArrayList<>();

myList.add("one");

myList.add("two");

myList.add("three");


// You can just use .forEach() on any class implementing Iterable interface

myList.forEach(System.out::println);


// Or when .stream() is needed

myList.stream()

    .map(a -> "digit: " + a)

    .forEach(System.out::println);


查看完整回答
反对 回复 2023-10-13
  • 2 回答
  • 0 关注
  • 84 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信