System.arraycopy用法
时间: 2024-02-24 11:52:18 浏览: 220
JAVA集合系列(4):关于数组复制的几种方法(源码解读)及执行效率,我们知多少?
System.arraycopy是Java中用于数组复制的方法。它可以将一个数组的内容复制到另一个数组中,同时可以指定复制的起始位置和长度。
该方法的语法如下:
```java
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
```
参数说明:
- src:源数组,即要复制的数组。
- srcPos:源数组中的起始位置,即从源数组的哪个索引开始复制。
- dest:目标数组,即将复制到的数组。
- destPos:目标数组中的起始位置,即从目标数组的哪个索引开始复制。
- length:要复制的元素个数。
示例代码如下:
```java
int[] srcArray = {1, 2, 3, 4, 5};
int[] destArray = new int[5];
System.arraycopy(srcArray, 0, destArray, 0, srcArray.length);
```
上述代码将srcArray数组中的元素复制到destArray数组中,从索引0开始,复制长度为srcArray.length个元素。
注意事项:
- 如果源数组和目标数组是同一个数组对象,且源数组的起始位置在目标数组的起始位置之前,那么复制过程可能会出现数据覆盖的情况。因此,在使用System.arraycopy方法时要特别注意。
- System.arraycopy方法只能用于复制基本类型数组和对象类型数组,不能用于复制集合类。
阅读全文