入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

[Java技巧] 如何复制数组的一部分到另外一个数组?

创建时间:2014-07-18 投稿人: 浏览次数:137

[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]开始的地方

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异常

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像