java list.stream() 判断list中是否存在 成绩不等于100的
时间: 2024-12-18 20:21:30 浏览: 4
在 Java 中,你可以使用 `List.stream()` 和 `anyMatch()` 方法结合来判断列表中是否存在成绩不等于100的学生。`anyMatch()` 函数会返回一个布尔值,如果列表中有任意元素满足给定的条件,则返回 `true`,否则返回 `false`。
以下是一个示例:
```java
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
// 添加一些学生数据,其中可能有成绩不等于100的学生
boolean hasNotPerfectScore = students.stream()
.filter(student -> student.getScore() != 100)
.anyMatch(Student::isPresent);
if (hasNotPerfectScore) {
System.out.println("列表中存在成绩不等于100的学生");
} else {
System.out.println("列表中所有学生的成绩都是100分");
}
}
// 假设Student类有一个名为getScore()的方法,isPresent可以用于简化条件判断
interface Student {
boolean isPresent();
}
}
```
在这个例子中,`filter` 方法用于筛选出成绩不等于100的学生,然后 `anyMatch` 检查过滤后的流是否包含至少一个这样的学生。如果有,`hasNotPerfectScore` 就为 `true`。
阅读全文