你知道java怎样使用CopyOfRange()方法对数组进行复制吗?下面的话要给大家讲到的就是这个方面的知识,一起来了解一下吧。
Arrays类的CopyOfRange()方法是另一种复制数组的方法,下面是语法形式:
Arrays.copyOfRange(dataType[] srcArray,int startIndex,int endIndex)
在这当中,srcArray表示原数组、startIndex表示开始复制的起始索引,目标数组中将包含起始索引对应的元素,除此之外,startIndex必须在0到srcArray.length之间、endIndex表示终止索引,目标数组中将不包含终止索引对应的元素,endIndex必须大于等于startIndex,可以大于 srcArray.length,假如,大于srcArray.length,那么目标数组中使用默认值填充。
注意一下了,目标数组假如已经存在了,那么就会被重构。
下面的话,来看一下相关示例:
假设有一个名称为scores的数组其元素为8个,现在需要定义一个名称为newScores的新数组。
新数组的元素为scores数组的前5个元素,并且顺序不变。
使用Arrays类copyOfRange()方法完成数组复制的代码如下:
public class Test20 { public static void main(String[] args) { // 定义长度为8的数组 int scores[] = new int[] { 57 , 81 , 68 , 75 , 91 , 66 , 75 , 84 }; System.out.println("原数组内容如下:"); // 循环遍历原数组 for (int i = 0; i < scores.length; i++) { System.out.print(scores[i] + "\t"); } // 复制原数组的前5个元素到newScores数组中 int newScores[] = (int[]) Arrays.copyOfRange(scores, 0, 5); System.out.println("\n复制的新数组内容如下:"); // 循环遍历目标数组,即复制后的新数组 for (int j = 0; j < newScores.length; j++) { System.out.print(newScores[j] + "\t"); } } }
原数组scores当中包含有8个元素,使用Arrays.copyOfRange()方法可以将该数组复制到长度为5的newScores数组中,截取scores数组的前5个元素即可。
运行结果:
原数组内容如下: 57 81 68 75 91 66 75 84 复制的新数组内容如下: 57 81 68 75 91
更多Java复制拷贝数组方法请继续关注奇Q工具网来进行了解吧,更多java常见问题及解决方法可以为你解答。
推荐阅读: