千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  千锋问问  > java两个数组合并成一个新的数组怎么操作

java两个数组合并成一个新的数组怎么操作

java两个数组合并 匿名提问者 2023-09-15 15:49:37

java两个数组合并成一个新的数组怎么操作

我要提问

推荐答案

  要将两个数组合并成一个新的数组,可以使用Java中的多种方法来实现。下面是一种可能的实现方式:

千锋教育

  1.首先,创建一个新的数组,大小为两个数组的长度之和。

  2.使用System.arraycopy方法将第一个数组的元素复制到新数组中。

  3.使用System.arraycopy方法将第二个数组的元素复制到新数组中,起始位置为第一个数组的长度。

  4.返回合并后的新数组。

  下面是一个示例代码:

  import java.util.Arrays;

  public class MergeArrays {

  public static void main(String[] args) {

  int[] arr1 = {1, 2, 3};

  int[] arr2 = {4, 5, 6};

  int[] mergedArray = mergeArrays(arr1, arr2);

  System.out.println(Arrays.toString(mergedArray));

  }

  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;

  }

  }

 

  这段代码将两个数组的元素分别复制到一个新的数组中,然后返回合并后的新数组。根据上述示例,两个数组 [1, 2, 3] 和 [4, 5, 6] 将合并为 [1, 2, 3, 4, 5, 6]。

其他答案

  •   另一种将两个数组合并的方法是使用Java 8中的流(Stream)。下面是一种使用流的方式:

      5.将两个数组合并到一个新的数组中。

      6.使用Arrays类的stream方法将新数组转换为流。

      7.使用flatMap方法平铺流中的所有元素。

      8.将流转换回数组,可以使用toArray方法。

      下面是一个示例代码:

      import java.util.Arrays;

      public class MergeArrays {

      public static void main(String[] args) {

      int[] arr1 = {1, 2, 3};

      int[] arr2 = {4, 5, 6};

      int[] mergedArray = mergeArrays(arr1, arr2);

      System.out.println(Arrays.toString(mergedArray));

      }

      public static int[] mergeArrays(int[] arr1, int[] arr2) {

      int[] mergedArray = Arrays.stream(arr1)

      .flatMap(a -> Arrays.stream(arr2).map(b -> new int[]{a, b}))

      .flatMapToInt(Arrays::stream)

      .toArray();

      return mergedArray;

      }

      }

      这段代码将两个数组合并为一个新数组,并使用流对元素进行平铺操作。最后将平铺后的流转换回数组并返回。根据上述示例,两个数组 [1, 2, 3] 和 [4, 5, 6] 将合并为 [1, 4, 2, 5, 3, 6]。

  •   还可以使用循环来将两个数组合并为一个新的数组。下面是一种循环的方式:

      9.创建一个新的数组,大小为两个数组的长度之和。

      10.使用一个循环将第一个数组的元素依次放入新数组中。

      11.使用另一个循环将第二个数组的元素依次放入新数组中,起始位置为第一个数组的长度。

      12.返回合并后的新数组。

      下面是一个示例代码:

      import java.util.Arrays;

      public class MergeArrays {

      public static void main(String[] args) {

      int[] arr1 = {1, 2, 3};

      int[] arr2 = {4, 5, 6};

      int[] mergedArray = mergeArrays(arr1, arr2);

      System.out.println(Arrays.toString(mergedArray));

      }

      public static int[] mergeArrays(int[] arr1, int[] arr2) {

      int[] mergedArray = new int[arr1.length + arr2.length];

      int i = 0;

      for (int num : arr1) {

      mergedArray[i] = num;

      i++;

      }

      for (int num : arr2) {

      mergedArray[i] = num;

      i++;

      }

      return mergedArray;

      }

      }

      这段代码使用循环将两个数组的元素逐个放入新的数组中,然后返回合并后的新数组。根据上述示例,两个数组 [1, 2, 3] 和 [4, 5, 6] 将合并为 [1, 2, 3, 4, 5, 6]。