使用反射在Java中创建,填充和显示数组

使用java.lang.reflect.Array.newInstance()方法创建一个数组。此方法基本上会创建一个具有所需组件类型和长度的新数组。

使用java.lang.reflect.Array.setInt()方法填充数组。此方法在为数组指定的索引处设置所需的整数值。

使用for循环显示的数组。演示此的程序如下所示-

示例

import java.lang.reflect.Array;
public class Demo {
   public static void main (String args[]) {
      int arr[] = (int[])Array.newInstance(int.class, 10);
      int size = Array.getLength(arr);
      for (int i = 0; i<size; i++) {
         Array.setInt(arr, i, i+1);
      }
      System.out.print("The array elements are: ");
      for(int i: (int[]) arr) {
         System.out.print(i + " ");
      }
   }
}

上面程序的输出如下-

The array elements are: 1 2 3 4 5 6 7 8 9 10

现在让我们了解上面的程序。

该数组是使用Array.newInstance()方法创建的。然后使用for循环和Array.setInt()方法填充数组。演示这的代码片段如下-

int arr[] = (int[])Array.newInstance(int.class, 10);
int size = Array.getLength(arr);
for (int i=0; i<size; i++) {
   Array.setInt(arr, i, i+1);
}

使用for循环显示该数组。演示这的代码片段如下-

System.out.print("The array elements are: ");
for(int i: (int[]) arr) {
   System.out.print(i + " ");
}