问题描述:在一个ArrayList中,存在重复的元素,需要对ArrayList进行去重处理。
解决方法:
import java.util.ArrayList;
import java.util.HashSet;
public class ArrayListDuplicateRemoval {
public static void main(String[] args) {
ArrayList list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(2);
list.add(4);
list.add(1);
HashSet set = new HashSet<>(list);
ArrayList newList = new ArrayList<>(set);
// 输出去重后的ArrayList
for (Integer num : newList) {
System.out.println(num);
}
}
}
输出结果: 1 2 3 4
import java.util.ArrayList;
import java.util.stream.Collectors;
public class ArrayListDuplicateRemoval {
public static void main(String[] args) {
ArrayList list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(2);
list.add(4);
list.add(1);
ArrayList newList = list.stream().distinct().collect(Collectors.toCollection(ArrayList::new));
// 输出去重后的ArrayList
for (Integer num : newList) {
System.out.println(num);
}
}
}
输出结果: 1 2 3 4
以上两种方法都可以实现ArrayList的去重,根据具体需求选择合适的方法。