當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Java Array newInstance()用法及代碼示例

Array 類的 getInstance() 方法用於創建具有指定組件類型和尺寸的新數組。如果 componentType 是非數組或接口類型的類,則新數組將維度.長度維度和 componentType 作為其組件類型。

用法

public static Object newInstance(Class<?> componentType, int length)
      throws NegativeArraySizeException


public static Object newInstance(Class<?> componentType,  int... dimensions)
      throws IllegalArgumentException,
             NegativeArraySizeException

參數

componentType- 表示新數組的組件類型的對象

dimensions- 表示新數組維度的 int 數組

返回

新數組

拋出

NullPointerException

IllegalArgumentException

ArrayIndexOutOfBoundsException -

負數組大小異常

例子1

//import statement

import java.lang.reflect.Array;

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

      String[][] strarr = (String[][]) Array.newInstance(String.class, 3,3);

      Array.set(strarr[0], 0, "javaTpoint");
      Array.set(strarr[1], 1, ".Net");
      Array.set(strarr[2], 2, "c#");

      System.out.println("Array[0][0] = " + Array.get(strarr[0], 0));
      System.out.println("Array[1][1] = " + Array.get(strarr[1], 1));
      System.out.println("Array[2][2] = " + Array.get(strarr[2], 2));
   }
}

輸出:

Array[0][0] = javaTpoint
Array[1][1] = .Net
Array[2][2] = c#

例子2

import java.lang.reflect.Array;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Arrays;

public class ReflectArraynewInstanceExample2  {

    public static void main(String... args) {
        int lnth = 4;
        Object obj = Array.newInstance(BigDecimal.class, lnth);
        for (int i = 0; i < lnth; i++) {
            Array.set(obj, i, BigDecimal.valueOf(i));
        }
        System.out.println(Arrays.toString((Object[]) obj));
    }
}

輸出:

[0, 1, 2, 3]




相關用法


注:本文由純淨天空篩選整理自 Java Array newInstance() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。