hen*_*rik 8 java arraylist java-8 java-stream
考虑以下ArrayList:
[0] => Person
[1] => User
[2] => Dummy
Run Code Online (Sandbox Code Playgroud)
如何使用Java流检查此arraylist是否包含除Personor 之外的任何其他对象User?
所以,我可以做一个if语句,如果它包含返回null 只 Person和User,或者返回数组列表本身,如果它包含任何其他对象之外Person或User像这样:
if( /*arrayList contains only Person and User*/ ) {
return null;
}
else {
//arrayList contains other objects besides Person and User
return arrayList;
}
Run Code Online (Sandbox Code Playgroud)
Man*_*dis 10
替代保罗的答案(在你的问题中使用if-else)
if (arrayList.stream().allMatch(o -> o instanceof Person || o instanceof User)) {
return null;
} else {
return arrayList;
}
Run Code Online (Sandbox Code Playgroud)
假设Person和User是类型,而不是具体的对象,你可以做这样的事情.
return list.stream()
.filter(o -> !(o instanceof Person) && !(o instanceof User))
.findAny()
.isPresent() ? list : null;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6832 次 |
| 最近记录: |