您的位置:

Java数组删除操作实现

1、删除方式一:通过创建一个新的数组实现

在Java中,对数组进行删除需要通过创建一个新的数组,来代替原来的数组。这是由于Java数组的长度是固定的,不能像列表一样动态扩展或缩小。

下面是一个示例代码,它演示了如何通过创建一个新的数组,来删除Java中的数组:

public class DeleteArrayDemo {
    public static void main(String[] args) {
        // 原始数组
        int[] originalArray = { 1, 2, 3, 4, 5 };
        
        // 要删除的元素下标
        int deleteIndex = 2;
        
        // 创建新的数组
        int[] newArray = new int[originalArray.length - 1];
        
        // 复制删除元素之前的元素
        for(int i=0, k=0; i


   

在上述代码中,首先定义了原始数组和要删除的元素下标。然后通过创建新的数组,新数组的长度是原始数组的长度减1。接着使用for循环来遍历原始数组,将除要删除的元素之外的元素复制到新数组中。最后打印新数组即可。

2、删除方式二:使用Java的List集合实现

另一种在Java中删除数组的方法是使用List集合。Java的List集合可以动态添加或删除元素,因此它可以很容易地实现在数组中删除元素。

下面是使用Java的List集合删除数组的示例代码:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class DeleteArrayDemo2 {
    public static void main(String[] args) {
        // 原始数组
        Integer[] originalArray = { 1, 2, 3, 4, 5 };
        
        // 要删除的元素下标
        int deleteIndex = 2;
        
        // 转换为List集合,方便删除
        List list = new ArrayList<>(Arrays.asList(originalArray));
        
        // 删除指定下标的元素
        list.remove(deleteIndex);
        
        // 将List集合转换为数组
        Integer[] newArray = list.toArray(new Integer[0]);
        
        // 打印新数组
        for(int i=0; i
     


      

在上述代码中,首先使用Integer数组定义了原始数组和要删除的元素下标。然后将原始数组转换为List集合。接着调用List集合的remove方法删除指定下标的元素。最后将List集合转换为数组并打印即可。

3、删除方式三:使用System.arraycopy方法实现

System.arraycopy方法是Java中用于在数组之间复制数据的方法。它可以将一个数组中的元素复制到另一个数组中。通过使用System.arraycopy方法实现,可以很容易地在Java数组中删除元素。

下面是使用System.arraycopy方法删除Java数组的示例代码:

public class DeleteArrayDemo3 {
    public static void main(String[] args) {
        // 原始数组
        int[] originalArray = { 1, 2, 3, 4, 5 };
        
        // 要删除的元素下标
        int deleteIndex = 2;
        
        // 创建新的数组
        int[] newArray = new int[originalArray.length - 1];
        
        // 复制删除元素之前的元素
        System.arraycopy(originalArray, 0, newArray, 0, deleteIndex);
        
        // 复制删除元素之后的元素
        System.arraycopy(originalArray, deleteIndex + 1, newArray, deleteIndex, originalArray.length - deleteIndex - 1);
        
        // 打印新数组
        for(int i=0; i


        

在上述代码中,首先定义了原始数组和要删除的元素下标。然后创建新的数组,并使用System.arraycopy方法将要删除的元素之前的元素和之后的元素分别复制到新数组中。最后打印新数组即可。

4、小结

Java中由于数组长度是固定的,因此删除数组元素需要通过创建新的数组来代替原来的数组。以上三种方法都是比较简单易懂的。具体应该选用哪一种删除方法,需要根据具体的情况来决定。