當我正在尋找一種方法來很好地逐個打印出數組時,我找到了該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[]
ArrayList
Collection
stream

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);
添加回答
舉報
0/150
提交
取消