Java使用Array类创建多维数组

1.创建一维数组

import java.lang.reflect.Array;
public class ArrayTest {
public static void main(String[] args) {
  try {
   // 创建一个元素类型为String,长度为10的数字
   Object arr = Array.newInstance(String.class, 10);
   // 依次为arr数组中index为5,6的元素赋值
   Array.set(arr, 5, "Jack");
   Array.set(arr, 6, "John");
   Array.set(arr,7,"zhansgt");
   // 依次取出arr数组中index为5,6的元素的值
   Object o1 = Array.get(arr, 5);
   Object o2 = Array.get(arr, 6);
   Object o3=Array.get(arr,7);
   // 输出arr数组中index为5,6的元素
   System.out.println(o1);
   System.out.println(o2);
   System.out.println(o3);
  } catch (Throwable e) {
   System.out.println(e);
  }
 }
}




2.创建二维数组

import java.lang.reflect.Array;

public class ArrayTest {
 /*
  * 使用Array类动态创建多维数组
  */
 public static void main(String[] args) {
  //创建一个元素类型String,维度为[5][10]的数组
  Object arr=Array.newInstance(String.class, 5,10);
  //为二维数组赋值
  //获取第一维度为4的数组
  Object firstIndex=Array.get(arr, 4);
  Array.set(firstIndex, 6, "zhangxun");
  Array.set(firstIndex,7,"lili");
  Array.set(firstIndex,9,"wangs");
  //获取第二维度为3的数组
  Object new_firstIndex=Array.get(arr, 3);
  Array.set(new_firstIndex, 5, "mada");
  //将arr数组转换为arr_str二维数组并输出
  String[][] arr_str=(String[][])arr;
  System.out.println(arr_str[4][6]);
  System.out.println(arr_str[4][7]);
  System.out.println(arr_str[4][9]);
  System.out.println(arr_str[3][5]);
 }
}



3.创建三维数组

import java.lang.reflect.Array;

public class ArrayTest {
 /*
  * 使用Array类动态创建多维数组
  */
 public static void main(String[] args) {
  //创建一个元素类型String,维度为[3][5][10]的数组
  Object arr=Array.newInstance(String.class, 3,5,10);
  //获得第一维度的数组,这个数组是一个二维数组
  Object firstIndex=Array.get(arr,2);
  //第一种赋值方式
  Array.set(firstIndex, 3, new String[]{"a1","a2"});
  //第二种方式,指定下标赋值
  Object secondIndex=Array.get(firstIndex, 4);
  Array.set(secondIndex, 7, "b1");
  //将arr数组转换为字符数组arr_str
  String[][][] arr_str=(String[][][])arr;
  //输出arr_str的内容
  System.out.println(arr_str[2][3][0]);
  System.out.println(arr_str[2][3][1]);
  System.out.println(arr_str[2][4][7]);
  /*
   * 1.通过Array类创建多维数组
   * 2.获取指定的维度
   * 3.插入数据
   * 4.操作动态创建出来的数组
   */
 }
}



原文地址:https://www.cnblogs.com/pekkle/p/6568822.html