Stream中间流的使用2

ArrayList<String> str=new ArrayList<String>();
str.add("张三");
str.add("张四");
str.add("张无忌");
str.add("李四");
str.add("林青霞");
str.add("林青");

 

//输出前3个
str.stream().limit(3).forEach(System.out::println);
//跳过前面三个输出剩下的全部
str.stream().skip(3).forEach(System.out::println);
//跳过前面2个,输出中间2哥
str.stream().skip(2).limit(2).forEach(System.out::println);

// 取前面四个,组成一个流
Stream<String> s1=str.stream().limit(4);
//跳过前面两个得到流
Stream<String> s2=str.stream().skip(2);
//合并s1,s2输出在控制台
Stream.concat(s1, s1).forEach(System.out::println);

////合并s1,s2输出在控制台,不能重复
Stream.concat(s1, s2).distinct().forEach(System.out::println);

ArrayList<String> str=new ArrayList<String>();
str.add("abcdde");
str.add("qwrr");
str.add("xczge");
str.add("dsada四");
str.add("faaf");
str.add("wfafae");
//按照子母弹的顺序输出元素
str.stream().sorted().forEach(System.out::println);
System.out.println("========");

//按照字符串长度输出元素
str.stream().sorted((s1,s2)->s1.length()-s2.length()).forEach(System.out::println);

 

posted @ 2021-11-13 10:05  java小寇  阅读(29)  评论(0)    收藏  举报