zoukankan      html  css  js  c++  java
  • java stream peek的使用

    peek用于处理集合中元素(对象)的某个属性的值,但不改变元素(对象)的类型(区别于map操作),举例如下:

    package listDemo;
    
    import org.apache.commons.lang3.StringUtils;
    
    import java.util.ArrayList;
    import java.util.List;
    import java.util.stream.Collectors;
    
    public class StreamPeekDemo {
    
        public static void main(String[] args) {
    
            List<Person> personList = new ArrayList<>();
            personList.add(new Person("xiaozhang", 20));
            personList.add(new Person("xiaowang", 21));
    
            List<Person> peekedList = personList.stream().peek(e -> e.setCity("beijing")).collect(Collectors.toList());
            System.out.println(StringUtils.join(peekedList, "-"));
    
        }
    }
    package listDemo;
    
    import lombok.Data;
    import lombok.NonNull;
    import lombok.RequiredArgsConstructor;
    
    @Data
    @RequiredArgsConstructor
    public class Person {
    
        @NonNull
        private String name;
        @NonNull
        private int age;
        private String city;
    
    }

    运行结果如下:

    Person(name=xiaozhang, age=20, city=beijing)-Person(name=xiaowang, age=21, city=beijing)
  • 相关阅读:
    Spark Steaming消费kafka数据条数变少问题
    intellij idea 搜索
    ZooKeeper shell
    linux 端口映射设置
    maxCompute odps 行转列
    dev stg prd 开发 测试 生产环境
    大数据之路
    MYSQL性能优化
    JavaScript学习笔记-setTimeout应用
    JavaScript学习笔记-函数
  • 原文地址:https://www.cnblogs.com/silenceshining/p/15340174.html
Copyright © 2011-2022 走看看