java List 根据条件去重复
时间: 2023-08-22 19:03:41 浏览: 92
JAVA去重复
可以使用Java 8中的Stream API来对List进行去重。以下是一个例子:
假设有一个List\<String\>,需要根据字符串长度进行去重。
```java
List<String> list = Arrays.asList("apple", "banana", "orange", "pear", "banana", "pineapple");
List<String> distinctList = list.stream()
.distinct()
.collect(Collectors.toList());
List<String> distinctListByLength = list.stream()
.distinct()
.sorted(Comparator.comparing(String::length))
.collect(Collectors.toList());
```
在上述代码中,通过使用Stream API的distinct()方法进行去重,再通过collect()方法将结果转换为List。如果需要根据条件排序,则可以使用sorted()方法,并传入Comparator对象来指定排序规则。在本例中,根据字符串长度进行排序。
注意,去重是基于对象的equals()方法实现的,因此如果需要根据自定义对象的某个属性进行去重,需要在该对象中覆盖equals()方法。
阅读全文