使用System.arraycopy进行数组复制类似的, Arrays提供了一个copyOfRange方法进行数组复制。
Arrays.copyOfRange()的格式如下:
1 copyOfRange(int[] original, int from, int to)
  1. 第一个参数表示源数组
  2. 第二个参数表示开始位置(取得到)
  3. 第三个参数表示结束位置(取不到)

代码案例如下:

 
 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 }

 

相关文章:

  • 2022-12-23
  • 2021-11-01
  • 2021-09-27
  • 2021-12-29
  • 2021-10-28
  • 2022-12-23
  • 2021-07-28
  • 2021-12-11
猜你喜欢
  • 2021-09-11
  • 2022-02-08
  • 2021-07-15
  • 2021-12-30
  • 2022-12-23
  • 2022-02-11
  • 2022-12-23
相关资源
相似解决方案