java数组操作

36 阅读1分钟

在 Java 编程中,数组是最基础的数据结构之一。但由于数组的长度固定特性,在指定位置插入元素需要一些特殊处理。

数组插入的原理

Java 数组一旦创建,长度就不可改变。因此,在指定位置插入元素的核心思路是:

  1. 创建一个新数组,长度比原数组大 1
  2. 将原数组中插入位置之前的元素复制到新数组
  3. 在新数组的指定位置放入要插入的元素
  4. 将原数组中插入位置之后的元素复制到新数组的后续位置

完整实现代码

java
 体验AI代码助手
 代码解读
复制代码
/*
 * 在数组的指定位置插入一个数据
 *
 * */

public class Demo05 {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7};

        int[] newArr;

//        insertEle(arr, newArr, 4, 888);
        newArr = insertEle(arr, 4, 777);
        showArr(newArr);
    }

    public static int[] insertEle(int[] arr, int pos, int value) {
        int[] newArr = new int[arr.length + 1];
        for (int i = 0; i < pos; i++) {
            newArr[i] = arr[i];
        }
        newArr[pos] = value;
        for (int i = pos; i < arr.length; i++) {
            newArr[i + 1] = arr[i];
        }
        return newArr;
    }

    public static void insertEle(int[] arr, int[] newArr, int pos, int value) {
        for (int i = 0; i < pos; i++) {
            newArr[i] = arr[i];
        }
        newArr[pos] = value;
        for (int i = pos; i < arr.length; i++) {
            newArr[i + 1] = arr[i];
        }
    }


    public static void showArr(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}