Java.util.Arrays.copyOfRange() 方法
描述
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 − If 如果 from > to
NullPointerException − 如果 original 为 null。
示例
下面的例子展示了 java.util.Arrays.copyOfRange() 方法的使用。
package com.tutorialspoint; 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