迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

在 Java 中复制数组

作者:迹忆客 最近更新:2023/09/17 浏览次数:

本文介绍了几种在 Java 中把一个数组复制到另一个数组的方法。我们可以使用手动的方法与循环来实现,但为了简单起见,我们不想重新发明轮子,还是不要使用这种方法。


在 Java 中使用 Arays.copyOf() 将一个数组复制到另一个数组

我们可以使用 Arrays 类的 copyOf() 方法,将指定的数组复制到一个新的数组中。copyOf() 需要两个参数,第一个是要复制的数组,第二个是新数组的长度。

在下面的例子中,我们将 array1 复制到 array2。新数组的长度等于 array1。如果新数组的大小大于旧数组的大小,那么每一个空的索引都将被填充为 0。我们用一个循环来打印新数组的项目和它们的索引。

import java.util.Arrays;

public class CopyArray {
    public static void main(String[] args) {
        int[] array1 = new int[]{2, 4, 6, 8, 10};

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

        for (int i = 0; i < array2.length; i++) {
            System.out.println("array2 position " + i + ": " + array2[i]);
        }

    }
}

输出:

array2 position 0: 2
array2 position 1: 4
array2 position 2: 6
array2 position 3: 8
array2 position 4: 10

使用 Java 中的 System.arraycopy() 将一个数组复制到另一个数组

System.arraycopy() 在我们要用旧数组的子项目创建一个新数组时非常有用,因为它将旧数组的指定位置的数组项目复制到新数组的位置。

System.arraycopy() 至少需要四个参数,分别是要复制的数组 array1array1 的起始位置、新数组 array2array2 的起始位置、要复制到 array2 的元素。输出显示的是 array2 中的元素。

public class CopyArray {
    public static void main(String[] args) {
        String[] array1 = new String[]{"Adam", "Claire", "Dave", "Greg", "Halsey", "Jane", "Kylie"};

        String[] array2 = new String[array1.length];

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

        for (int i = 0; i < array2.length; i++) {
            System.out.println("array2 position " + i + ": " + array2[i]);
        }

    }
}

输出:

array2 position 0: Adam
array2 position 1: Claire
array2 position 2: Dave
array2 position 3: Greg
array2 position 4: Halsey
array2 position 5: Jane
array2 position 6: Kylie

在 Java 中使用 clone() 将一个二维数组复制到另一个数组中

Java 中最后一个复制数组的方法是 clone(),它返回一个包含复制数组项的新数组。在这个例子中,我们使用一个有八个元素的二维数组 array1。我们使用 array1.clone() 来复制数组,并使用两个循环来打印新的数组 array2 元素。

public class CopyArray {
    public static void main(String[] args) {
        
        int[][] array1 = {{10, 20}, {30, 40}, {50, 60}, {70, 80}};

        int[][] array2 = array1.clone();

        for (int i = 0; i < array2.length; i++) {
            for (int j = 0; j < array2[i].length; j++) {
                System.out.println("array2 position [" + i + "][" + j + "] : " + array2[i][j]);

            }
        }

    }
}

输出:

array2 position [0][0] : 10
array2 position [0][1] : 20
array2 position [1][0] : 30
array2 position [1][1] : 40
array2 position [2][0] : 50
array2 position [2][1] : 60
array2 position [3][0] : 70
array2 position [3][1] : 80

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Java 中获取字符数组的长度

发布时间:2023/09/18 浏览次数:59 分类:Java

本文介绍了如何在 Java 中获取字符数组的长度,还列举了一些示例代码来理解这个话题。

Java 数组索引

发布时间:2023/09/18 浏览次数:104 分类:Java

本文介绍了如何在 Java 中使用不同的技术获取数组的索引。在 Java 中获取一个整数类型数组中元素的索引

在 Java 中创建动态数组

发布时间:2023/09/17 浏览次数:103 分类:Java

本指南教授如何在 Java 中创建动态数组。数组是一种固定大小的数据结构,其大小一旦声明就无法更改。动态数组为我们提供了创建动态大小数组的便利。

在 Java 中查找数组中的最大数

发布时间:2023/09/17 浏览次数:151 分类:Java

这篇文章阐明了在 Java 中查找数组中的最大数。数组包含类似类型的数据。虽然你已经可以读取所有元素并对其执行多项操作,但本文将向你展示如何在 Java 中查找数组中的最大值。

在 Java 中移动数组

发布时间:2023/09/17 浏览次数:72 分类:Java

在本文中,我们将介绍在 Java 中移动数组元素的方法。在 Java 中使用 for 循环和 temp 变量移动数组

在 Java 中填充数组

发布时间:2023/09/17 浏览次数:55 分类:Java

我们将讨论如何在 Java 中填充数组。在本文中,我们用 Java 填充一个数组。在这里填充意味着用一些值填充数组。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便