java 删除数组指定位置元素
时间: 2023-07-06 10:38:56 浏览: 105
在Java中,数组的长度是固定的,无法直接删除元素。但是,我们可以通过创建一个新的数组来间接删除指定位置的元素。具体的做法是:
1. 创建一个新数组,它的长度比原数组少1。
2. 将原数组中指定位置之前的元素复制到新数组中。
3. 将原数组中指定位置之后的元素复制到新数组中。
下面是一个示例代码:
```java
public class Example {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5};
int index = 2; // 要删除的元素的位置
int[] newArr = new int[arr.length - 1]; // 创建新数组
// 将原数组中指定位置之前的元素复制到新数组中
System.arraycopy(arr, 0, newArr, 0, index);
// 将原数组中指定位置之后的元素复制到新数组中
System.arraycopy(arr, index + 1, newArr, index, arr.length - index - 1);
// 输出新数组
for (int i = 0; i < newArr.length; i++) {
System.out.print(newArr[i] + " ");
}
}
}
```
在上面的代码中,我们创建了一个原数组arr,然后指定要删除的元素的位置index为2。接着,我们创建了一个新数组newArr,它的长度比原数组少1。然后,我们使用System.arraycopy方法将原数组中指定位置之前的元素复制到新数组中,再将原数组中指定位置之后的元素复制到新数组中。最后,我们输出新数组newArr中的元素。运行结果为:1 2 4 5。
阅读全文