当前位置:首页 > Java

java数组如何复制

2026-03-23 20:59:15Java

使用System.arraycopy方法

System.arraycopy是Java中高效的原生数组复制方法,适用于任何类型的数组。需要指定源数组、源起始位置、目标数组、目标起始位置及复制长度。

int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
System.arraycopy(source, 0, destination, 0, source.length);

使用Arrays.copyOf方法

Arrays.copyOf会创建一个新数组,并自动截断或填充默认值(如0或null)以匹配指定长度。

java数组如何复制

int[] original = {1, 2, 3};
int[] copied = Arrays.copyOf(original, original.length); // 复制整个数组
int[] resized = Arrays.copyOf(original, 5); // 新数组长度为5,多出部分填充0

使用Arrays.copyOfRange方法

复制数组的指定范围,包含起始索引(包含),结束索引(不包含)。

int[] array = {10, 20, 30, 40, 50};
int[] partialCopy = Arrays.copyOfRange(array, 1, 4); // 结果为{20, 30, 40}

使用clone方法

数组对象实现了Cloneable接口,直接调用clone()会生成一个浅拷贝的新数组。

java数组如何复制

String[] names = {"Alice", "Bob"};
String[] clonedNames = names.clone();

手动循环复制

通过遍历源数组逐个赋值,适合需要额外逻辑处理的场景。

double[] data = {1.1, 2.2, 3.3};
double[] manualCopy = new double[data.length];
for (int i = 0; i < data.length; i++) {
    manualCopy[i] = data[i];
}

对象数组的深拷贝

若数组元素是对象,需单独处理每个对象的拷贝。以下示例使用流式操作:

class Person implements Cloneable {
    String name;
    @Override protected Object clone() throws CloneNotSupportedException {
        return super.clone();
    }
}
Person[] people = new Person[2];
people[0] = new Person();
Person[] deepCopy = Arrays.stream(people)
                          .map(p -> { try { return (Person)p.clone(); } catch (Exception e) { return null; }})
                          .toArray(Person[]::new);

标签: 数组java
分享给朋友:

相关文章

如何查看java版本

如何查看java版本

查看 Java 版本的方法 通过命令行工具 打开终端(Windows 为命令提示符或 PowerShell,macOS/Linux 为 Terminal),输入以下命令并回车: java -ve…

java如何下载

java如何下载

下载Java的步骤 访问Oracle官方网站或OpenJDK项目页面下载Java开发工具包(JDK)。Oracle JDK适用于商业用途,OpenJDK为开源版本。 打开浏览器,进入Oracle J…

php数组实现

php数组实现

PHP 数组的基本实现 PHP 数组是一种非常灵活的数据结构,可以存储多个值,并且支持多种类型的键(整数或字符串)。PHP 数组实际上是有序映射(ordered map),可以看作是列表(vector…

java如何创建类

java如何创建类

创建类的基本语法 在Java中,类通过class关键字定义,语法如下: [访问修饰符] class 类名 { // 成员变量(属性) // 构造方法 // 成员方法 }…

如何运行java文件

如何运行java文件

运行Java文件的方法 确保已安装Java Development Kit (JDK),可通过命令行输入java -version和javac -version验证安装。 编写Java代码并保存为.…

如何编写java程序

如何编写java程序

安装开发环境 下载并安装JDK(Java Development Kit),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH正确设置。 选…