2017-07-17 52 views
1

有一个List<SomeObject>其中SomeObject有一个日期字段等字段。使用Java Streams期待获得两个列表,其中一个包含SomeObject实例,其中的日期字段非空,而另一个包含剩余的具有空日期字段的SomeObject实例。Java流列表操作

回答

3

您正在寻找Collectors.partitioningBy

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

什么是变量来了? –

+1

@JohnC这是'Test(SomeObject t)''Predicate ''''''Collectors.partitioningBy'''函数接口的方法的参数。你可以随便命名。 – Eran