可以使用HashSet來實現數組去重,同時不改變原數組的位置。具體步驟如下:
遍歷原數組,將元素逐個添加到HashSet中,HashSet會自動去重元素。
創建一個新的數組,長度為HashSet的大小。
遍歷HashSet,將元素依次添加到新數組中。
返回新數組作為結果。
以下是一個示例代碼:
import java.util.HashSet;
public class ArrayDuplicateRemoval {
public static void main(String[] args) {
int[] array = {1, 2, 3, 2, 1, 5, 6, 5};
int[] result = removeDuplicates(array);
// 輸出去重后的數組
for (int i = 0; i < result.length; i++) {
System.out.print(result[i] + " ");
}
}
public static int[] removeDuplicates(int[] array) {
HashSet<Integer> set = new HashSet<>();
// 遍歷原數組,將元素逐個添加到HashSet中
for (int i = 0; i < array.length; i++) {
set.add(array[i]);
}
// 創建一個新的數組,長度為HashSet的大小
int[] result = new int[set.size()];
int index = 0;
// 遍歷HashSet,將元素依次添加到新數組中
for (int num : set) {
result[index++] = num;
}
return result;
}
}
輸出結果:
1 2 3 5 6