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

400-811-9990
手机站
千锋教育

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

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

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

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆

Java合并两个数组如何实现

匿名提问者 2023-09-15 17:09:46

Java合并两个数组如何实现

我要提问

推荐答案

  要在Java中合并两个数组,有多种方法可供选择。下面介绍三种不同的方法:

Java教程

  方法一:使用Arrays.copyOf()

  该方法使用Arrays类的copyOf()方法,将两个数组合并为一个新数组。

  public static int[] mergeArrays(int[] array1, int[] array2) {

  int[] mergedArray = Arrays.copyOf(array1, array1.length + array2.length);

  System.arraycopy(array2, 0, mergedArray, array1.length, array2.length);

  return mergedArray;

  }

 

  上述代码中,先使用Arrays.copyOf()创建一个新数组,长度为两个数组长度之和。然后使用System.arraycopy()将第二个数组中的元素复制到新数组的合适位置。

  方法二:使用ArrayList

  ArrayList类提供了add()方法来添加元素,可以利用它进行数组的合并。

  public static int[] mergeArrays(int[] array1, int[] array2) {

  ArrayList mergedList = new ArrayList<>();

  for (int num : array1) {

  mergedList.add(num);

  }

  for (int num : array2) {

  mergedList.add(num);

  }

  int[] mergedArray = new int[mergedList.size()];

  for (int i = 0; i < mergedList.size(); i++) {

  mergedArray[i] = mergedList.get(i);

  }

  return mergedArray;

  }

 

  上述代码中,先创建一个ArrayList对象mergedList,通过循环将两个数组的元素添加到该列表中。然后创建一个新的int类型数组mergedArray,并将mergedList中的元素复制到该数组中。

  方法三:使用Java Stream API

  Java 8引入的Stream API提供了便捷的方法来操作集合和数组。我们可以使用flatMap()方法将两个数组合并为一个流,然后使用toArray()方法将流转换回数组。

  import java.util.Arrays;

  public static int[] mergeArrays(int[] array1, int[] array2) {

  int[] mergedArray = Stream.concat(Arrays.stream(array1), Arrays.stream(array2))

  .toArray();

  return mergedArray;

  }

 

  上述代码中,利用Arrays.stream()方法将两个数组转换为流,然后使用Stream.concat()方法将这两个流连接起来。最后,通过toArray()方法将流转换回数组。

  无论你选择哪种方法,都可以实现数组的合并。这些方法中的每一种都有其各自的优势和适用场景,你可以根据你的需求选择合适的方法来使用。

猜你喜欢LIKE

Java合并两个数组如何实现

2023-09-15

java相对路径创建文件的步骤

2023-09-15

map排序sort的步骤

2023-09-15

最新文章NEW

linux判断文件是否存在函数

2023-09-15

作为一名优秀的测试工程师需要会什么

2023-09-15

零基础学软件测试好学吗?要学哪些内容

2023-09-15