arraylist去重
时间: 2023-08-19 17:14:59 浏览: 98
list的排序和去重
5星 · 资源好评率100%
可以使用HashSet或LinkedHashSet来对ArrayList进行去重操作。HashSet是无序的,而LinkedHashSet是有序的。下面是两种方法的示例代码:
方法一:使用HashSet去重
```java
List<Integer> arrayList = new ArrayList<Integer>(){{add(3);add(2);add(4);add(2);add(3);add(5);add(4);add(5);}};
ArrayList<Integer> uniqueList = new ArrayList<>(new HashSet<>(arrayList));
```
在这个方法中,我们首先创建一个HashSet对象,将ArrayList的元素添加到HashSet中,由于HashSet的特性是不允许重复元素的,所以重复的元素会被自动去除。然后我们再将HashSet转换回ArrayList,得到去重后的结果。
方法二:使用LinkedHashSet去重
```java
List<Integer> arrayList = new ArrayList<Integer>(){{add(3);add(2);add(4);add(2);add(3);add(5);add(4);add(5);}};
ArrayList<Integer> uniqueList = new ArrayList<>(new LinkedHashSet<>(arrayList));
```
在这个方法中,我们使用LinkedHashSet代替HashSet,LinkedHashSet会保持元素的插入顺序,所以去重后的结果会保持原来的顺序。
无论是使用HashSet还是LinkedHashSet,都可以实现对ArrayList的去重操作。具体选择哪种方法取决于你对元素顺序的要求。
#### 引用[.reference_title]
- *1* *3* [【Java】为ArrayList去重](https://blog.csdn.net/yongh701/article/details/43266695)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [ArrayList去重常用的四种方式及性能对比(JMH性能分析)](https://blog.csdn.net/yeahPeng11/article/details/122904072)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文