java流式编程的收集操作

流最终可以收集为Collection,set,Map


import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;

//集合得收集操作
public class StreamDemo5 {
    public static void main(String[] args) {
        ArrayList<String> strings = new ArrayList<>();
        strings.add("郭奉孝");
        strings.add("郭嘉");
        strings.add("孙权");
        strings.add("刘备");
        strings.add("曹操");

        //tolist
        List<String> collect = strings.stream().collect(Collectors.toList());
        for (String s : collect) {
            System.out.println(s);
        }
        System.out.println("-----------------");
        Set<String> integers = new HashSet<>();
        integers.add("10");
        integers.add("20");
        integers.add("30");
        integers.add("40");
        integers.add("50");
        //toset
        Set<Integer> collect1 = integers.stream().map(Integer::parseInt).filter(s -> s > 30).collect(Collectors.toSet());
        for (Integer integer : collect1) {
            System.out.println(integer);
        }
        System.out.println("-----------------");

        String[] array = {"林青霞,30","柳岩,34","张曼玉,35","貂蝉,31"};
        //tomap
        Map<String, String> collect2 = Stream.of(array).collect(Collectors.toMap(s -> s.split(",")[0], s -> s.split(",")[1]));
        Set<String> strings1 = collect2.keySet();
        for (String s : strings1) {
            System.out.println(s + collect2.get(s));
        }
    }
}


posted @ 2021-05-03 18:27  code-G  阅读(94)  评论(0编辑  收藏  举报