java8 Stream函数式
迷茫
迷茫 2017-04-18 09:35:35
[Java讨论组]

rt,比如有个ArrayList a,泛型为B,我想去判断如果B中某个字段(假如getFieldX)不为null,执行一种操作,为null执行另一种,请问框架怎么写?要函数式那种

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(2)
迷茫
List<Person> list = new ArrayList<>();
        list.addAll(Arrays.asList(new Person("a"), new Person("b"), new Person(), new Person("c"), new Person()));
        
        list = list.stream()//创建stream
        .map((p) -> {
            if (p.getName() == null) {
                //为空时执行的操作
                p.setName("hello");
            } else {
                //不为空要执行的操作
                p.setName(null);
            }
            return p;
        })//转换stream,返回值仍为stream。所有转换strem操作为惰性,直到调用汇聚函数才一并执行,
        .collect(Collectors.toList());//汇聚函数,计算结果返回为List类型
        System.out.println(list);
迷茫

函数式?你指的是lambda表达式?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号