jdk1.8對集合的新操作

1.生成一個list

List<String> li = Arrays.asList("a","b");參數爲一個可變參數

2.對集合本身進行操作,並生成一個新的list集合

List<String> str = li.steam().map(x->{x+x}).collect(Collectors.toList());

3.對集合進行過濾  返回false代表拋棄該元素返回true反之

List<String> str = li.steam().filter(x->{return true/flase}).collect(Collectors.toList());

4.對集合進行分組,以字符串的長度進行分組,並生成一個map

Map<Integer,Liat<String>> col = li.stream().collect(Collectors.groupingBy(String::length));

5.集合的遍歷forEach操作

list.forEach(x->{sout(x)});

6.max和min函數 用來取集合中的最大值最小值

Optional<String> max = list.stream().max((x,y)->{

    return x.compareTo(y)';

})

System.out.println(max.orElse(null));//如果該集合爲空就會輸出爲null;使用該方法可以避免空指針異常。

7.集合的合併

List<String> l1 = Arrays.asList("1","2","3","4","5","6");

List<String> l2 = Arrays.asList("1a","2a","3a","4a","5a","6a");

Stream.concat(l1.steam(),l2.steam());  返回一個steam可以用數據收集器將數據收集起來。

8.平行流,就是把集合的多個元素開多線程去處理




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章