なんとなくラムダ式の使い方がわかったのでまとめておく。
StreamAPIの概要
・大量データを逐次処理するストリーム処理を効率的に記述するため
・コレクション操作を効率的に行うため
に考案された。
HowではなくWhatで記述するのが特徴と言われている。
「作成」→「中間操作」→「終端操作」の順で記述される。
繰り返し分を書かず、ネストを減らせることや、分かっている人にはみやすいことが利点の模様。
配列のstream
arrays
Listのストリーム作成の使用例
int sum = List.stream()//リストをストリームに変換する。(作成)
.mapToInt(s -> Integer.ParseInt(s)) (中間操作)
.sum();(終端操作)
まずはストリーム化することからstreamAPIは始まる。
文字列型のListがint型に変換され、合計値が出てくる。
Mapのstreamの使用例
int Score = Student.stream()
.map(s->s.getScore)//Studentから点数の要素をgetする中間操作。
.forEach(system.out::println)
Studentというgettersetterのオブジェクトを作っておいて、各生徒の点数を順に書き出す。
なんかもうちょっと良い例があれば、書き足したい。