Java8から導入されたStreamAPI
Collectionの操作に便利な処理がたくさんある
(いまさらになるが)メモ的な感じで列挙していこうと思う。
StreamAPIとは
Stream自体はListやMapなどのCollection要素ではなく、配列やリストなどの要素に対して生成処理、中間処理、終端処理を加えて新しい要素に置き換えるためのパイプラインのようなものという認識
Stream#of
Stream<String> stream = Stream.of("a","b","c");
Collection#stream
Listからの生成
List<String> list = Arrays.asList("a","b","c");
Stream<String> stream = list.stream();
Mapからの生成
Map<String,String> map = new HashMap<>();
Stream<Entry<String,String>> stream = map.entrySet().stream();
Arrays#Stream
String[] array = {"a","b","c"};
Stream<String> stream = Arrays.stream(array);
BufferedReader#lines
BufferedReader reader = new BufferedReader(newInputStreamReader(System.in, directory));
Stream<String> reader.lines();