java 中的Arraylist 数组如何用简单的方法实现去重
时间: 2024-02-12 22:07:00 浏览: 78
Java中的ArrayList可以通过使用Set集合来实现去重。Set集合是不允许重复元素的集合,所以将ArrayList中的元素添加到Set集合中,就可以去除重复元素。以下是一个示例代码:
```
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(1);
list.add(4);
list.add(2);
Set<Integer> set = new HashSet<>(list); // 将ArrayList转换为Set
List<Integer> newList = new ArrayList<>(set); // 将Set转换为ArrayList
System.out.println(newList); // [1, 2, 3, 4]
```
这段代码会输出去重后的ArrayList,即 [1, 2, 3, 4]。其中,通过将ArrayList转换为Set,利用Set的去重特性去除重复元素,再将Set转换为ArrayList即可。
相关问题
ArrayList数组去重
可以使用Java中的Set集合来实现ArrayList数组去重。具体步骤如下:
1. 创建一个新的HashSet集合,用于存放不重复的元素。
2. 使用addAll()方法将原始的ArrayList数组中的元素添加到HashSet集合中。
3. 创建一个新的ArrayList集合,用于存放去重后的元素。
4. 使用addAll()方法将HashSet集合中的元素添加到新的ArrayList集合中。
5. 返回新的ArrayList集合。
示例代码如下:
```java
import java.util.ArrayList;
import java.util.HashSet;
public class ArrayListRemoveDuplicate {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(1);
list.add(2);
ArrayList<Integer> newList = removeDuplicate(list);
System.out.println(newList);
}
public static ArrayList<Integer> removeDuplicate(ArrayList<Integer> list) {
HashSet<Integer> set = new HashSet<>(list);
ArrayList<Integer> newList = new ArrayList<>(set);
return newList;
}
}
```
输出结果为:[1, 2, 3]。
安卓arraylist数组去重
在Android中,如果你想要从ArrayList中去除重复元素,可以使用`HashSet`或者自定义算法来实现。以下是两种常见方法:
1. **使用HashSet**:
HashSet是一个不允许有重复元素的数据结构,你可以先将ArrayList转换为HashSet,然后再转换回ArrayList,重复元素会被自动移除。
```java
ArrayList<String> list = ...; // 假设这是你要操作的ArrayList
HashSet<String> set = new HashSet<>(list);
list.clear();
list.addAll(set);
```
2. **遍历并添加到新ArrayList**:
另一种方式是遍历原ArrayList,只将未见过的元素添加到新的ArrayList。
```java
ArrayList<String> newList = new ArrayList<>();
for (String item : list) {
if (!newList.contains(item)) {
newList.add(item);
}
}
```
阅读全文