zoukankan      html  css  js  c++  java
  • Java8过滤器(Filter)

    1、在Java之前对List进行过滤的方式

    public class BeforeJava8 {
    
        public static void main(String[] args) {
    
            List<Person> peoples = Arrays.asList(
                    new Person("java", 22),
                    new Person("js", 35),
                    new Person("css", 31)
            );
    
            Person result = getStudentByName(peoples, "java");
            System.out.println(result);
    
        }
    
        private static Person getStudentByName(List<Person> peoples, String name) {
            Person result = null;
            for (Person person : peoples) {
                if (name.equals(person.getName())) {
                    result = person;
                }
            }
            return result;
        }
    }

    2、在Java8使用Filter过滤List

    public class FilterJava8 {
    
        public static void main(String[] args) {
    
            List<Person> peoples = Arrays.asList(
                    new Person("java", 22),
                    new Person("js", 35),
                    new Person("css", 31)
            );
    
            Person result1 = peoples.stream()
                    .filter(p -> "java".equals(p.getName()))
                    .findAny()
                    .orElse(null);
            System.out.println(result1);
    
            Person result2 = peoples.stream()
                    .filter(p -> "spring".equals(p.getName()))
                    .findAny()
                    .orElse(null);
            System.out.println(result2);
    
            Person result3 = peoples.stream()
                    .filter((p) -> "java".equals(p.getName()) && 22 == p.getAge())
                    .findAny()
                    .orElse(null);
            System.out.println(result3);
    
            // 使用map收集
            String name = peoples.stream()
                    .filter(p -> "js".equals(p.getName()))
                    .map(Person::getName)
                    .findAny()
                    .orElse("");
            System.out.println(name);
            System.out.println("---------");
    
            List<String> names = peoples.stream()
                    .map(Person::getName)
                    .collect(Collectors.toList());
            names.forEach(System.out::println);
        }
    }
  • 相关阅读:
    window.open全屏显示
    js关闭当前页面
    sublime text 3 3126注册码
    关闭tomcat8080端口
    给json数组添加新字段并赋值
    怎么把json数据alert
    js里url里有特殊字符(如&)情况,后台request.getParameter("url")里&变成&
    request.getParameter乱码
    javaMail 详解
    JavaMail使用SMTP协议发送电子邮件(详解)
  • 原文地址:https://www.cnblogs.com/fengkunangel/p/10424864.html
Copyright © 2011-2022 走看看