美文网首页Java 杂谈
java8 - limit & filter &

java8 - limit & filter &

作者: 良人与我 | 来源:发表于2018-12-18 12:40 被阅读1次

    通过例子展示 java8 中如何使用 limit 、 filter 和 distinct 。

    数据实体类:

    @Data
    @ToString
    @AllArgsConstructor
    @NoArgsConstructor
    public class Student  {
        private Integer age;
        private String name;
    }
    

    初始化数据

    List<Student> studentList = Lists.newArrayList ();
            studentList.add (new Student (28,"river"));
            studentList.add (new Student (12,"lucy"));
            studentList.add (new Student (22,"frank"));
            studentList.add (new Student (33,"kity"));
    

    filter 方法 , 返回符合过滤条件的值

    List<Student> filterList = studentList.parallelStream ()
                    .filter (t->  t.getAge () > 22)
                    .collect(Collectors.toList());
            System.out.println (filterList);
    

    [Student(age=28, name=river), Student(age=33, name=kity)]

    limit 方法 ,返回限定数量的值

    List<Student> limitList = studentList.parallelStream ().limit(2).collect(Collectors.toList());
    System.out.println (limitList);
    

    [Student(age=28, name=river), Student(age=12, name=lucy)]

    distinct 方法,返回不同的年龄值

        List<Integer> distinctList = studentList.parallelStream ().map(student -> student.getAge()).distinct().collect(Collectors.toList());
    

    [28, 12, 22, 33]

    感谢你的阅读。

    相关文章

      网友评论

        本文标题:java8 - limit & filter &

        本文链接:https://www.haomeiwen.com/subject/fhbckqtx.html