欢迎光临散文网 会员登陆 & 注册

Stream流使用实例

2023-08-20 17:15 作者:努力奔跑的的肥崽俊  | 我要投稿

ArrayList<String> objects = new ArrayList<>();

objects.add("a");objects.add("b");objects.add("c");objects.add("d");


// 列表转列表:直接toList

List<String> ans1 = objects.stream()

       .filter(x -> x.equals("a") || x.equals("b"))

       .collect(Collectors.toList()); 


// 列表转map在最后toMap即可由String转Entry

Map<String, String> ans2 = objects.stream()

       .filter(x -> x.equals("c") || x.equals("d"))

       .collect(Collectors.toMap(x -> x, x -> x + "1", (a, b) -> b)); 


// map转map也是在toMap做好映射关系

Map<String, String> ans3 = ans2.entrySet().stream()

       .filter(x -> x.getKey().equals("c"))

       .collect(Collectors.toMap(x -> x.getKey(), x -> x.getValue())); 


// map可以改元素Entry为String

List<String> ans4 = ans2.entrySet().stream()

       .filter(x -> x.getKey().equals("d"))

       .map(x -> x.getKey() + x.getValue())

       .collect(Collectors.toList()); 


System.out.println("列表转列表" + ans1);

System.out.println("列表转map" + ans2);

System.out.println("map转map" + ans3);

System.out.println("map转列表" + ans4); 

Stream流使用实例的评论 (共 条)

分享到微博请遵守国家法律