Java Stream流怎么判断一个list里面的元素都相等
时间: 2024-04-15 13:31:46 浏览: 310
Java比较两个List的值是否相等的方法
要判断一个List中的元素是否都相等,可以使用Java Stream流来实现。下面是一种可能的实现方式:
```java
List<Integer> list = Arrays.asList(1, 1, 1, 1, 1);
boolean allEqual = list.stream().distinct().limit(2).count() <= 1;
System.out.println(allEqual); // 输出 true
```
在这个例子中,我们有一个包含多个整数的List。我们使用`stream()`方法将List转换为流,然后使用`distinct()`方法去除重复元素。接着使用`limit(2)`方法限制流的大小为2,如果大于2则说明有不相等的元素存在。最后通过`count()`方法统计流中元素的个数,并将结果与1进行比较。
如果`count()`方法返回的结果小于或等于1,则说明List中的所有元素都相等。否则,至少有两个不相等的元素。
请注意,这种方法假设List中的元素类型是可比较的,并且相等性判断是基于元素的`equals()`方法。如果List中包含自定义对象,需要确保对象的`equals()`方法正确实现了相等性判断。
希望对你有帮助!
阅读全文