Java Arrays copyOf() 方法



描述

Java Arrays copyOf(long[] original,int newLength) 方法複製指定的陣列,截斷或用 false(如果必要)填充,以便副本具有指定的長度。對於原始陣列和副本中都有效的所有索引,這兩個陣列將包含相同的值。對於在副本中有效但在原始陣列中無效的任何索引,副本將包含 false。當且僅當指定的長度大於原始陣列的長度時,才會存在此類索引。

宣告

以下是 java.util.Arrays.copyOf(long[] original,int newLength) 方法的宣告

public static long[] copyOf(long[] original,int newLength)

引數

  • original − 要複製的陣列。

  • newLength − 要返回的副本的長度。

返回值

此方法返回原始陣列的副本,已截斷或填充了 false 元素以獲得指定的長度。

異常

  • NegativeArraySizeException − 如果 newLength 為負。

  • NullPointerException − 如果 original 為 null。

將長整型陣列複製到相同大小的陣列示例

以下示例演示了 Java Arrays copyOf() 方法的使用。首先,我們建立了一個長整型陣列。我們列印了它們。使用 copyOf() 方法建立了相同大小的陣列副本並列印。

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      long[] longArr = { 10L, 20L, 30L, 13L };

      System.out.print("Long Array: [");
      for (int i = 0; i < longArr.length; i++) {
         System.out.print(longArr[i] + " ");
      }

      System.out.print("]\nCopied Array: \n");

      // Create copy of the array of same size
      long[] longArrCopy = Arrays.copyOf(longArr, longArr.length);
     
      System.out.print("Long Array: [");
      for (int i = 0; i < longArrCopy.length; i++) {
         System.out.print(longArrCopy[i] + " ");
      }
      System.out.print("]");
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

Long Array: [10 20 30 13 ]
Copied Array: 
Long Array: [10 20 30 13 ]

將長整型陣列複製到更大尺寸的陣列示例

以下示例演示了 Java Arrays copyOf() 方法的使用。首先,我們建立了一個長整型陣列。我們列印了它們。使用 copyOf() 方法建立了更大尺寸的陣列副本並列印,並附加了預設值。

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      long[] longArr = { 10L, 20L, 30L, 13L};
      System.out.print("Long Array: [");
      for (int i = 0; i < longArr.length; i++) {
         System.out.print(longArr[i] + " ");
      }
      System.out.print("]\nCopied Arrays: \n");

      // Create copy of the array of greater size
      long[] longArrCopy = Arrays.copyOf(longArr, longArr.length + 1);

      System.out.print("Long Array: [");
      for (int i = 0; i < longArrCopy.length; i++) {
         System.out.print(longArrCopy[i] + " ");
      }
      System.out.print("]");
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

Long Array: [10 20 30 13 ]
Copied Array: 
Long Array: [10 20 30 13 0 ]

將長整型陣列複製到更小尺寸的陣列示例

以下示例演示了 Java Arrays copyOf() 方法的使用。首先,我們建立了一個長整型陣列。我們列印了它們。使用 copyOf() 方法建立了更小尺寸的陣列副本並列印。

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      long[] longArr = { 10L, 20L, 30L, 13L };

      System.out.print("Long Array: [");
      for (int i = 0; i < longArr.length; i++) {
         System.out.print(longArr[i] + " ");
      }
      System.out.print("]\nCopied Arrays: \n");

      // Create copy of the array of lesser size
      long[] longArrCopy = Arrays.copyOf(longArr, longArr.length - 1);

      System.out.print("Long Array: [");
      for (int i = 0; i < longArrCopy.length; i++) {
         System.out.print(longArrCopy[i] + " ");
      }
      System.out.print("]");
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

Long Array: [10 20 30 13 ]
Copied Array: 
Long Array: [10 20 30 ]
java_util_arrays.htm
廣告