2017-07-17 51 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