Java System arraycopy() 方法

2024年11月7日 | 阅读 2 分钟

Java System 类的 arraycopy() 方法返回或复制一个指定源数组的子序列组件,从源数组(称为“src”)的指定位置(称为“srcPos”)开始,复制到目标数组(称为“dest”)的指定位置(称为“destPos”)。“length”参数用于指定要复制的组件数量。

语法

参数

src - 源数组(Object 类型)

srcPos - 源数组中的起始位置(Integer 类型)

dest - 目标数组(Object 类型)

destpos - 目标数组中的起始位置(Integer 类型)

length - 要复制的元素数量(Integer 类型)

返回值

  1. 如果 dest 或 src 为 null,则会抛出 NullPointerException。
  2. 如果 src 和 dest 参数引用同一个数组对象,则组件的复制将从 srcPos 开始。首先会将组件复制到一个临时数组,然后再复制到目标数组的 destPos 位置。
  3. 如果任何 int 类型参数具有负值,则会抛出 IndexOutOfBoundsException。
  4. 如果 src 和 dest 参数引用一个非数组对象,则会抛出 ArrayStoreException

示例 1

输出

Source array:1234321
Destination array:5678765
Source Position:1
Destination Position:2
Length:4
Destination array after use of arraycopy()
5623435

示例 2

输出

Source array:ABBHAM
Destination array:SHUNUL
Source Position:2
Destination Position:3
Length:4
Destination array after use of arraycopy()
SHUBHAMJADON