Java API中Array类简单使用示例
Array类是java.lang.reflect包中的一个类,该类提供了动态创建和访问java数组的方法。允许在执行 get 或 set 操作期间进行扩展转换,但如果发生收缩转换,则抛出
IllegalArgumentException
。
下面以一个简单的示例来说明一下:
package com.erbin.test; import java.lang.reflect.Array; import java.util.Arrays; public class TestArray { public static void main(String[] args) { int[] it = new int[]{12,34,4,2,3}; System.out.println("before: "+Array.getInt(it, 2)); Array.setInt(it, 2, 10); System.out.println("after: "+Array.getInt(it, 2)); //use the Array to get the index value double[] d = new double[]{2,33.32,23.0}; System.out.println(Array.getDouble(d, 2)); //create the new array by using the newInstance method Object o = Array.newInstance(int.class, 4); int[] na = (int[]) o; na[0] = 23; System.out.println(Arrays.toString(na)); //create the new multiple array Object oo = Array.newInstance(int.class, 2,3); int[][] naa = (int[][])oo; System.out.println(Arrays.toString(naa)); } }注意:使用Array类获取指定组件下的数据时,类型要保持一致,否则会报异常:
Exception in thread "main" before: 4
after: 10
java.lang.IllegalArgumentException: argument type mismatch
at java.lang.reflect.Array.getInt(Native Method)
at com.erbin.test.TestArray.main(TestArray.java:15)
如果想了解更多该类的方法可以参考Java API进行查找。
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 【C++】用指针定义多维可变长数组
- 下一篇: Java Array和Arrays