📜  system.arraycopy - Java (1)

📅  最后修改于: 2023-12-03 15:05:27.458000             🧑  作者: Mango

Java 中的 System.arraycopy

简介

System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 是 Java 中的一个静态方法,主要用于数组的复制。它可以将一个数组的一部分或全部内容复制到另一个数组中,也可以在同一个数组中复制内容。

方法参数

| 参数名称 | 描述 | | --- | --- | | src | 源数组 | | srcPos | 源数组中复制的起始位置 | | dest | 目标数组 | | destPos | 目标数组中复制的起始位置 | | length | 复制的长度 |

使用示例
int[] src = {1, 2, 3, 4, 5};
int[] dest = new int[5];

// 复制 src 数组的全部内容到 dest 数组
System.arraycopy(src, 0, dest, 0, src.length);

// 复制 src 数组中下标为 1 到 3 的内容到 dest 数组中下标为 2 到 4 的位置
System.arraycopy(src, 1, dest, 2, 3);
注意事项
  • 复制过程中,如果源数组和目标数组是同一数组,则复制的内容可能会被覆盖。可以通过借助一个中间数组来避免这种情况的发生。
  • 复制过程中,如果目标数组的长度不足以容纳复制的内容,则会出现 ArrayIndexOutOfBoundsException 异常。可以通过预先判断目标数组的长度或者动态扩展目标数组的长度来避免这种异常的发生。