java.util.Arrays.copyOfRange(byte[] original, int from, int to)方法实例
java.util.Arrays.copyOfRange(byte[] original, int from, int to) 方法复制指定的数组到一个新的数组的指定范围。范围(to)的最终索引,它必须大于或等于from,可以大于original.length,在这种情况下(字节)0被放置在的副本的索引大于或等于所有元素到original.length - from。返回的数组的长度将是to - from。
声明
以下是java.util.Arrays.copyOfRange()方法的声明
public static byte[] copyOfRange(byte[] original, int from, int to)
参数
-
original -- 这是该数组从该范围要被复制。
-
from -- 这是该范围的要复制的初始索引(包括)。
-
to -- 这是该范围的要复制的最终索引(不包括)。
返回值
此方法返回一个包含指定范围从原来的数组,截取或用零填充以获得所需长度的新数组。
异常
-
ArrayIndexOutOfBoundsException -- 如果 from < 0 或 from > original.length()
-
IllegalArgumentException -- 如果 from > to.
-
NullPointerException -- 如果 original 是 null.
例子
下面的示例演示java.util.Arrays.copyOfRange()方法的用法。
package com.yiibai; import java.util.Arrays; public class ArrayDemo { public static void main(String[] args) { // intializing an array arr1 byte[] arr1 = new byte[] {5, 62, 15}; // printing the array arr1 System.out.println("Printing 1st array:"); for (int i = 0; i < arr1.length; i++) { System.out.println(arr1[i]); } // copying array arr1 to arr2 with range from index 1 to 7 byte[] arr2 = Arrays.copyOfRange(arr1, 1, 7); // printing the array arr2 System.out.println("Printing new array:"); for (int i = 0; i < arr2.length; i++) { System.out.println(arr2[i]); } } }
让我们来编译和运行上面的程序,这将产生以下结果:
Printing 1st array: 5 62 15 Printing new array: 62 15 0 0 0 0