java streams是什么?下面就一起來了解一下吧~
Stream是Java8中新加入的api,有利于集合對象進行各種便利、高效的聚合操作,以及大批量數據操作 ,Stream API 借助于同樣新出現的 Lambda 表達式,極大的提高編程效率和程序可讀性,Stream的使用案例:
下面是一個簡單的示例代碼
List?menu?=?... List ?lowCaloricDishesName?=?menu.stream() ????//篩選出卡路里大于400的??? ?????.filter(d?->?d.getCalories()?400)??? ?????//抽取名字屬性創建一個新的流???? ?????.map(Dish::getName) ????//這個流按List類型返回??? ?????.collect(toList());
在這段代碼?filter?和?map?操作被稱為中間操作,中間操作會返回一個新的流,而?collect?則被稱為終端操作只有終端操作才會讓整個流執行并關閉。也就是說?每個流只能遍歷一次?,因為collect以后這個流就已經關閉了。
List?test?=?Arrays.asList("Java8",?"In",?"Action"); Stream ?s?=?title.stream(); s.forEach(System.out::println); s.forEach(System.out::println);???//?代碼會拋出一個java.lang.IllegalStateException異常
以上就是小編今天的分享了,希望可以幫助到大家。