一:数组之间的复制
System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制。
其函数原型是:
public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
解释:
src:源数组;
srcPos:源数组要复制的起始位置;
dest:目的数组;
destPos:目的数组放置的起始位置;
length:复制的长度。
注意:src and dest都必须是同类型或者可以进行转换类型的数组.
例:
public static void main(String[] args) {
String [] strs = {"12","123","1234","12345"};
String [] newStrs = {"0","0","0","0"};;
System.arraycopy(strs, 1, newStrs, 0, 2);
for (int i = 0;i<newStrs.length;i++){
System.out.println(newStrs[i]);
}
}
注意点:strs 和newStrs (源数组和目的数组都不能为空,否则会报空指针异常)
运行输出:
123
1234
0
0
二:类对象之间的复制
BeanUtils.copyProperties(Object oldObject, Object newObject);
解释:
oldObject为源对象
newObject为目的对象
说明:copyProperties只会复制对象之间属性名相同的属性;
这里就不做详细说明了。
网友评论