[Java技巧] 如何复制数组的一部分到另外一个数组?
2014-07-18 12:00
225 查看
[Java技巧] 如何复制数组的一部分到另外一个数组?
1.在矩阵运算、或者数组编程中,经常会遇到一些这样的问题:
如何把一个数组中指定范围的内容,不用循环复制到另外一个数组中的指定位置?
JAVA提供了一个API:System.arraycopy,会方便实现这一功能:
[例子]
数组A:[1,2,3,4,5] 长度为5的一个数组
数组B:[0,0,0,0,0,0,0,0,0,0] 长度为10的一个数组
现在调用System.arraycopy(),将数组A的部分内容拷贝到数组B从B[4]开始的地方
调用程序,会发现打印出复制后,B的内容为:
0, 0, 0, 0, 1, 2, 3, 4, 5, 0,
[说明]
[注意事项]
要注意复制的长度,不要越界,超过原数组或目的数组的长度,都会报 out of index异常
1.在矩阵运算、或者数组编程中,经常会遇到一些这样的问题:
如何把一个数组中指定范围的内容,不用循环复制到另外一个数组中的指定位置?
JAVA提供了一个API:System.arraycopy,会方便实现这一功能:
[例子]
数组A:[1,2,3,4,5] 长度为5的一个数组
数组B:[0,0,0,0,0,0,0,0,0,0] 长度为10的一个数组
现在调用System.arraycopy(),将数组A的部分内容拷贝到数组B从B[4]开始的地方
int[] A = {1,2,3,4,5}; int[] B = new int[10]; System.arraycopy(A, 0, B, 4, 5); for( int i=0; i<B.length; i++ ) { System.out.print( B[i] + ", "); }
调用程序,会发现打印出复制后,B的内容为:
0, 0, 0, 0, 1, 2, 3, 4, 5, 0,
[说明]
System.arraycopy(src, srcPos, dest, destPos, length) //src:要拷贝的源数组</span> //srcPos:要源数组的起始位置,从0算起 //dest:要拷贝到的目的数组 //destPos:目的数组的起始位置 //length:需要拷贝的长度</p>
[注意事项]
要注意复制的长度,不要越界,超过原数组或目的数组的长度,都会报 out of index异常
相关文章推荐
- 谈JAVA中如何将两个byte数组合成一个数组
- java如何实现数组的复制
- 如何将一个java对象(包括java对象数组、集合)转换成一个json字符串
- java程序:一个排序好的数组,增加一个数插入到合适的位置保存到另外个数组,输出
- java字节流的方式复制一个文件,按数组读取和写入
- 从字符数组第m个元素开始复制到另外一个字符数组中
- 复制一个目录下的所有文件到另外一个目录(Java实现)
- 如何在Exchange2010中批量实现将一个通讯组中的成员复制到另外一个通讯组
- vc中如何将一个工程的资源复制到另外一个工程?
- JAVA 如何将一个已知数组传给另一个数组
- java中如何把一个array复制到arrayList里
- vc中如何将一个工程的资源复制到另外一个工程【转】
- 复制一个目录下的所有文件到另外一个目录(Java实现)
- Java-一个数组中的元素复制到另一个数组
- 在Java applet中如何显示另外一个HTML页面?
- java把一个文件的内容复制到另外一个文件
- Java Scrfipt 数组如何删除一个元素
- 一个整数数组,有n个整数,如何找其中m个数的和等于另外n-m个数的和
- 复制JAVABEAN中的属性到另外一个JAVABEAN中
- Java中,如何将两个数组拼接为一个