【问题标题】:Java Stream list operation [duplicate]Java Stream列表操作[重复]
【发布时间】:2017-12-21 14:20:51
【问题描述】:

有一个List<SomeObject>,其中SomeObject 在其他字段中有一个日期字段。使用Java Streams 正在寻找两个列表,一个包含日期字段为非空的 SomeObject 实例,而另一个包含具有空日期字段的剩余 SomeObject 实例。

【问题讨论】:

    标签: java list java-8 java-stream


    【解决方案1】:

    您正在寻找Collectors.partitioningBy:

    Map<Boolean,List<SomeObject>> partition =
        list.stream().collect(Collectors.partitioningBy(s->s.getDate()!=null));
    

    【讨论】:

    • 这里的变量s是什么?
    • @JohnC 是传递给Collectors.partitioningByPredicate&lt;SomeObject&gt; 功能接口的test(SomeObject t) 方法的参数。你可以随意命名。
    猜你喜欢
    • 1970-01-01
    • 2019-08-11
    • 2017-02-18
    • 1970-01-01
    • 2014-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多