判断List是否只含有某个值用Stream怎么判断
时间: 2023-12-20 09:06:08 浏览: 19
可以使用 Stream 的 allMatch() 方法来判断 List 是否只含有某个值,示例如下:
List<Integer> list = Arrays.asList(1, 1, 1);
boolean allOnes = list.stream().allMatch(i -> i == 1);
在上述例子中,allOnes 的值将会是 true,因为 List 中所有的元素都是 1。如果 List 中有任何一个元素不等于 1,则 allOnes 的值将会是 false。
相关问题
用stream流判断对象集合中是否存在某个字段的值等于1
假设对象集合为List<MyObject>,其中MyObject包含属性field,可以使用Java 8的Stream流来判断是否存在某个字段的值等于1:
```java
boolean exists = myList.stream().anyMatch(o -> o.getField() == 1);
```
其中,anyMatch方法接受一个Predicate对象,用于判断集合中是否存在任意一个元素满足该条件。在上述代码中,Lambda表达式o -> o.getField() == 1表示对于集合中的每一个元素,判断其field属性是否等于1,如果存在至少一个元素满足该条件,返回true,否则返回false。
另外,如果要判断所有元素是否都满足该条件,可以使用allMatch方法:
```java
boolean allMatch = myList.stream().allMatch(o -> o.getField() == 1);
```
如果要判断所有元素都不满足该条件,可以使用noneMatch方法:
```java
boolean noneMatch = myList.stream().noneMatch(o -> o.getField() == 1);
```
获取List中某个属性的所有值,判断是否存在某个值
好的,您可以使用 Java 8 的 Stream API 来实现这个功能。假设您有一个包含对象的 List,每个对象都有一个属性,您想要获取该属性的所有值并判断是否存在某个特定的值,可以按照以下方式操作:
假设您的对象类名为 ObjectClass,属性名为 property,要查找的值为 targetValue:
```java
List<ObjectClass> originalList = ...; // 原始的 List
boolean exists = originalList.stream()
.map(ObjectClass::getProperty) // 获取每个对象的 property 属性值
.anyMatch(targetValue::equals); // 判断是否存在 targetValue
if (exists) {
// 存在 targetValue 的处理逻辑
} else {
// 不存在 targetValue 的处理逻辑
}
```
这里使用了 `map` 方法来将每个对象转换为其属性值,然后使用 `anyMatch` 方法来检查是否存在与 `targetValue` 相等的值。如果存在,`exists` 变量将设置为 `true`,否则将设置为 `false`。
请将 `PropertyType` 替换为您实际的属性类型,将 `targetValue` 替换为您要查找的值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)