使用distinct如何去重
时间: 2023-07-14 13:11:06 浏览: 111
在Java 8及以上版本中,可以使用Stream的`distinct()`方法来对List进行去重操作。具体步骤如下:
1. 将List转换为Stream对象:使用`stream()`方法将List转换为Stream对象。
2. 调用`distinct()`方法去重:在Stream对象上调用`distinct()`方法,它将根据对象的equals()方法判断元素是否重复。
3. 将Stream转换为List:使用`collect()`方法将Stream对象转换为List。
以下是一个示例代码:
```java
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> list = Arrays.asList("apple", "banana", "apple", "orange", "banana");
List<String> distinctList = list.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(distinctList); // 输出: [apple, banana, orange]
}
}
```
在上述示例中,列表中的重复元素被去除,得到了一个去重后的List。请注意,该方法依赖于元素的equals()方法来判断是否重复,因此需要确保对象正确实现了equals()方法。
阅读全文