Java新特性玩转JDK8之流操作map和filter函数

DBC 1.6K 0
map函数

将流中的每⼀个元素 T 映射为 R(类似类型转换)
上堂课的例⼦就是,类似遍历集合,对集合的每个对象做处理
场景:转换对象,如javaweb开发中集合⾥⾯的DO对象转换为DTO对象

小例子
     List<User> list = Arrays.asList(new User(1, "小东", "123"), new User(21, "jack", "rawer"),
                new User(155, "tom", "sadfsdfsdfsd"),
                new User(231, "marry", "234324"), new User(100, "小D", "122223"));


        List<UserDTO> userDTOList = list.stream().map(obj -> {
            UserDTO userDTO = new UserDTO(obj.getId(), obj.getName());
            return userDTO;
        }).collect(Collectors.toList());


        System.out.println(userDTOList);
filter函数

⽤于通过设置的条件过滤出元素
需求:过滤出字符串⻓度⼤于5的字符串

小例子
        List<String> list2 = Arrays.asList("springboot", "springcloud", "redis", "git", "netty", "java", "html", "docker");

        List<String> resultList = list2.stream().filter(obj -> obj.length() > 5).collect(Collectors.toList());

        System.out.println(resultList);
场景:主要⽤于筛选过滤出符合条件的元素

发表评论 取消回复
表情 图片 链接 代码

分享