Java-util-arrays-copyofrange-t

提供:Dev Guides
移動先:案内検索

Java.util.Arrays.copyOfRange()メソッド

説明

  • java.util.Arrays.copyOfRange(T [] original、int from、int to)*メソッドは、指定された配列の指定された範囲を新しい配列にコピーします。 範囲(from)の初期インデックスは、ゼロとoriginal.lengthの間にある必要があります。 original [from]の値は、コピーの初期要素に配置されます(from == original.lengthまたはfrom == toの場合を除く)。 元の配列の後続の要素の値は、コピーの後続の要素に配置されます。

範囲(to)の最終インデックスは、from以上である必要があり、original.lengthより大きくてもかまいません。この場合、indexがoriginal以上のコピーのすべての要素にnullが配置されます。長さ-から。 返される配列の長さは-〜になります。

宣言

以下は* java.util.Arrays.copyOfRange()*メソッドの宣言です

public static <T> T[] copyOfRange(T[] original, int from, int to)

パラメーター

  • original -これは、範囲のコピー元の配列です。
  • from -これは、コピーされる範囲の初期インデックスです。
  • to -これは、コピーされる範囲の最終インデックスです。

戻り値

このメソッドは、元の配列から指定された範囲を含む新しい配列を返し、必要な長さを得るために切り捨てられるか、ゼロで埋められます。

例外

  • ArrayIndexOutOfBoundsException -<0または> original.length()からの場合
  • IllegalArgumentException -from> toの場合。
  • NullPointerException -オリジナルがnullの場合。

次の例は、java.util.Arrays.copyOfRange()メソッドの使用方法を示しています。

package com.finddevguides;

import java.util.Arrays;

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

     //intializing an array arr1
      short[] arr1 = new short[]{15, 10, 45};

     //printing the array
      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 of index from 1 to 3
      Object arr2 = Arrays.copyOfRange(arr1, 1, 3);

     //cast arr2 as short in order to be printable
      short[] arr3 = (short[]) arr2;

     //printing the array arr2
      System.out.println("Printing new array:");
      for (int i = 0; i < arr3.length; i++) {
         System.out.println(arr3[i]);
      }
   }
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

Printing 1st array:
15
10
45
Printing new array:
10
45