java数组去重
时间: 2023-06-21 18:09:41 浏览: 92
Java中有多种方法可以对数组进行去重操作,以下是其中的两种常见方式:
1. 使用Set集合
可以通过将数组元素逐个添加到Set集合中,由于Set集合不允许重复元素,所以最终得到的Set集合即为去重后的数组。然后再将Set集合转换回数组即可。
示例代码:
```java
int[] arr = {1, 2, 3, 2, 1};
Set<Integer> set = new HashSet<>();
for (int i : arr) {
set.add(i);
}
int[] newArr = new int[set.size()];
int index = 0;
for (Integer i : set) {
newArr[index++] = i;
}
```
2. 使用双重循环
可以使用双重循环遍历数组,对于每个元素,再内层循环中遍历其后面的所有元素,如果找到重复元素,则将该元素移动到数组末尾,并将数组长度减一。这样可以保证数组前面的元素都是不重复的。
示例代码:
```java
int[] arr = {1, 2, 3, 2, 1};
int len = arr.length;
for (int i = 0; i < len; i++) {
for (int j = i + 1; j < len; j++) {
if (arr[i] == arr[j]) {
arr[j] = arr[len - 1];
len--;
j--;
}
}
}
int[] newArr = Arrays.copyOf(arr, len);
```
阅读全文