欢迎访问宙启技术站
智能推送

Java函数如何实现两个数组的合并?

发布时间:2023-10-31 10:33:25

在Java中,可以通过以下几种方法来实现两个数组的合并。

方法一:使用循环遍历两个数组,将 个数组的元素依次赋值给新数组,再将第二个数组的元素依次赋值给新数组,从而实现两个数组的合并。

public static int[] mergeArrays(int[] arr1, int[] arr2) {
    int[] mergedArr = new int[arr1.length + arr2.length];

    int index = 0;
    for (int i = 0; i < arr1.length; i++) {
        mergedArr[index] = arr1[i];
        index++;
    }

    for (int i = 0; i < arr2.length; i++) {
        mergedArr[index] = arr2[i];
        index++;
    }

    return mergedArr;
}

方法二:使用Java中提供的System.arraycopy()方法,将两个数组的元素分别复制到新数组的不同部分,从而实现两个数组的合并。

public static int[] mergeArrays(int[] arr1, int[] arr2) {
    int[] mergedArr = new int[arr1.length + arr2.length];

    System.arraycopy(arr1, 0, mergedArr, 0, arr1.length);
    System.arraycopy(arr2, 0, mergedArr, arr1.length, arr2.length);

    return mergedArr;
}

方法三:使用Java中提供的Arrays类中的copyOf()方法,将两个数组的元素复制到新数组中,并指定新数组的长度,从而实现数组的合并。

import java.util.Arrays;

public static int[] mergeArrays(int[] arr1, int[] arr2) {
    int[] mergedArr = Arrays.copyOf(arr1, arr1.length + arr2.length);

    System.arraycopy(arr2, 0, mergedArr, arr1.length, arr2.length);

    return mergedArr;
}

无论使用哪种方法,都可以通过传入两个数组作为参数,返回一个合并后的新数组。

这些方法都可以适用于不同类型的数组,只需要在以上代码中将int修改为相应的数据类型即可。