Java的list去重
时间: 2023-02-28 09:30:45 浏览: 48
可以使用Java集合类`HashSet`来去除List中的重复元素。
方法1: 首先将List转换为Set,由于Set不能包含重复元素,所以会自动去重。然后再将Set转换回List。
```
List list = ...;
Set set = new HashSet(list);
List newList = new ArrayList(set);
```
方法2: 使用Java8新特性stream去重,
```
list = list.stream().distinct().collect(Collectors.toList());
```
第二种方法,在集合本身上操作,更加简洁。
相关问题
javalist去重
对于Java List去重,有多种方法可以实现。以下是三种常见的方法:
方法一:使用双重循环遍历List,逐个比较元素,如果有重复则移除。
```java
public static List removeDuplicate(List list) {
for (int i = 0; i < list.size() - 1; i++) {
for (int j = list.size() - 1; j > i; j--) {
if (list.get(j).equals(list.get(i))) {
list.remove(j);
}
}
}
return list;
}
```
方法二:使用一个额外的新List,遍历原List,如果新List中不包含该元素,则添加到新List中。
```java
public static List removeDuplicate(List list){
List listTemp = new ArrayList();
for(int i=0;i<list.size();i++){
if(!listTemp.contains(list.get(i))){
listTemp.add(list.get(i));
}
}
return listTemp;
}
```
方法三:使用Java 8的Stream对List进行去重操作。
```java
list.stream().distinct().collect(Collectors.toList());
```
java list去重
可以使用HashSet来实现Java List去重,具体代码如下:
```
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(1);
list.add(2);
Set<Integer> set = new HashSet<Integer>(list);
list.clear();
list.addAll(set);
System.out.println(list); // 输出 [1, 2, 3]
```
在上面的代码中,首先创建了一个包含重复元素的List,然后使用HashSet来去重,并将去重后的元素重新添加到List中。最后输出去重后的List。