Java 基础教程

Java 面向对象

Java 高级教程

Java 笔记

Java FAQ

java 两个数组合并


在 Java 中,有多种方式可以合并两个数组。我将为您介绍几种常见的实现方式,并提供相应的步骤流程和示例代码。以下是这些方法:

使用循环遍历

这是一种最基本的方法,通过循环遍历两个数组,将元素一个一个地添加到一个新的数组中。

步骤流程:

  1. 创建一个新的数组,长度为两个输入数组的长度之和。
  2. 使用循环遍历第一个数组,将其元素逐个添加到新数组中。
  3. 使用循环遍历第二个数组,同样将其元素逐个添加到新数组中。

示例代码:

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

    int index = 0;
    for (int num : arr1) {
        mergedArray[index] = num;
        index++;
    }

    for (int num : arr2) {
        mergedArray[index] = num;
        index++;
    }

    return mergedArray;
}

使用 System.arraycopy

这是一种效率较高的方法,它利用了 System.arraycopy 方法来实现数组之间的元素复制。

步骤流程:

  1. 创建一个新的数组,长度为两个输入数组的长度之和。
  2. 使用 System.arraycopy 复制第一个数组的内容到新数组的前半部分。
  3. 使用 System.arraycopy 复制第二个数组的内容到新数组的后半部分。

示例代码:

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

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

    return mergedArray;
}

使用 Java 8 Stream

在 Java 8 中,您可以使用 Stream API 来合并数组。

步骤流程:

  1. 将两个数组转换为流。
  2. 使用 Stream.concat 方法合并两个流。
  3. 将合并后的流转换回数组。

示例代码:

import java.util.Arrays;
import java.util.stream.Stream;

public static int[] mergeArrays(int[] arr1, int[] arr2) {
    return Stream.concat(Arrays.stream(arr1), Arrays.stream(arr2))
                 .toArray();
}

依赖

这些方法不需要任何额外的第三方库。如果您正在使用 Maven 或 Gradle,您只需要 Java 标准库即可。

Maven 依赖坐标:

<!-- 这里是您项目中的其他依赖 -->
<!-- 无需额外依赖 -->

Gradle 依赖坐标:

// 这里是您项目中的其他依赖
// 无需额外依赖

请注意,以上示例代码仅用于演示合并数组的不同方法。您可以根据实际需求和项目环境选择最适合您的方法。

数组是一种数据结构,用来存储同一类型值的集合。通过一个整型下标可以访问数组中的每一个值。例如,如果 a 是一个整型数组,a[i] 就是数组中 ...
假设我们有两个List,分别是list1和list2,我们的目标是将它们合并成一个新的List。###使用ApacheCommonsColl ...
下面我将介绍三种常见的方式,包括使用循环、使用`addAll()`方法和使用JavaStream。使用`addAll()`方法将第二个Lis ...
Java 实现两个列表(list)的元素交错合并(拼接)。 ...
为了演示方便,我们假设你要合并的两个Map的类型都是`Map<String,String>`。###使用putAll方法这是最简单的方法之一 ...