在 Java 中删除数组元素有以下三种方法:使用 System.arraycopy() 方法,通过覆盖要删除的元素来重新排列数组。使用 Arrays.copyOfRange() 方法,创建新副本时排除要删除的元素。将数组转换为 ArrayList,使用 remove() 删除元素,再将 ArrayList 转换回数组。

Java 中删除数组元素
删除 Java 数组中的元素可以通过以下几种方式实现:
1. 使用 System.arraycopy() 方法
System.arraycopy() 方法可用于复制数组的部分元素到另一个数组。通过将要删除的元素覆盖为数组的其余元素,从而实现删除操作。
立即学习“Java免费学习笔记(深入)”;
int[] arr = {1, 2, 3, 4, 5};
int indexToRemove = 2; // 要删除的元素的索引
// 创建一个新数组,大小比原始数组小 1
int[] newArr = new int[arr.length - 1];
// 复制数组元素到新数组,跳过要删除的元素
System.arraycopy(arr, 0, newArr, 0, indexToRemove);
System.arraycopy(arr, indexToRemove + 1, newArr, indexToRemove, arr.length - indexToRemove - 1);
// 更新 arr 引用指向新数组
arr = newArr;2. 使用 Arrays.copyOfRange() 方法
Arrays.copyOfRange() 方法可用于创建数组的一个新副本,其中包含指定范围的元素。通过指定要删除的元素的索引作为起始和结束索引,可以排除该元素。
int[] arr = {1, 2, 3, 4, 5};
int indexToRemove = 2; // 要删除的元素的索引
// 创建一个新数组,大小比原始数组小 1
int[] newArr = Arrays.copyOfRange(arr, 0, indexToRemove);
int[] tempArr = Arrays.copyOfRange(arr, indexToRemove + 1, arr.length);
// 连接两个副本以形成新数组
arr = new int[arr.length - 1];
System.arraycopy(newArr, 0, arr, 0, newArr.length);
System.arraycopy(tempArr, 0, arr, newArr.length, tempArr.length);3. 使用 ArrayList
将数组转换为 ArrayList,并使用 remove() 方法删除元素。然后将修改后的 ArrayList 转换回数组。
// 将数组转换为 ArrayList ArrayListlist = new ArrayList<>(Arrays.asList(arr)); // 删除元素 list.remove(indexToRemove); // 将 ArrayList 转换回数组 arr = list.stream().mapToInt(Integer::intValue).toArray();











