與使用System.arraycopy進行數組復制類似的, Arrays提供了一個copyOfRange方法進行數組復制。
Arrays.copyOfRange()的格式如下:
1 copyOfRange(int[] original, int from, int to)
第一個參數表示源數組
第二個參數表示開始位置(取得到)
第三個參數表示結束位置(取不到)
代碼案例如下:
1 import java.util.Arrays; 2 public class HelloWorld { 3 public static void main(String[] args) { 4 int a[] = new int[] { 18, 62, 68, 82, 65, 9 }; 5 6 // 不同的是System.arraycopy,需要事先准備好目標數組,並分配長度。 7 // copyOfRange只需要源數組就就可以了,通過返回值,就能夠得到目標數組了。 8 // 除此之外,需要注意的是 copyOfRange 的第3個參數,表示源數組的結束位置,是取不到的。 9 10 // copyOfRange(int[] original, int from, int to) 11 // 第一個參數表示源數組 12 // 第二個參數表示開始位置(取得到) 13 // 第三個參數表示結束位置(取不到) 14 int[] b = Arrays.copyOfRange(a, 0, 3); 15 for (int i = 0; i < b.length; i++) { 16 System.out.print(b[i] + "\t");//18 62 68 17 } 18 19 // 溢位復制 20 System.out.println(); 21 int[] C = Arrays.copyOfRange(a, 0, 7); 22 for (int i = 0; i <C.length; i++) { 23 System.out.print(C[i] + "\t");//18 62 68 82 65 9 0 24 } 25 } 26 }