`

反射-整型数组

    博客分类:
  • Java
 
阅读更多
package com.reflect;

import java.lang.reflect.Array;

/**
 * 
 * @Description:   创建了一个 5 x 10 x 15 的整型数组(5个数组,每个数组10行15列数据),
 * 并把索引位置为[3][5][10] 的元素的值为设37  
 */
public class ArrayTester2 {
	public static void main(String[] args) {
		int[] dims = new int[]{5,10,15};
		//创建一个具有指定的组件类型和维度的新数组。
		Object array = Array.newInstance(Integer.TYPE, dims);
		//获得第3个数组
		Object arrayObj = Array.get(array, 3);
		Class<?> cls = arrayObj.getClass().getComponentType();
		System.out.println(cls);
		//获得第5行
		arrayObj = Array.get(arrayObj, 5);
		//设置第10列(0开始)值
		Array.setInt(arrayObj, 10, 37);
		int arrayCast[][][] = (int[][][])array;
		System.out.println(arrayCast[3][5][10]);
		
	}

}
/**array:
[
  [
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
  ], 
  [
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
	[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
  ],
  [
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
  ], 
  [
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
  ], 
  [
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 
   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
 ]
]*/

 

分享到:
评论

相关推荐

    动力节点-Java基础视频教程

    - 基本数据类型:整型、浮点型、字符型等 - 引用数据类型:类、数组等 - 运算符与表达式 - 算术运算符、关系运算符、逻辑运算符 - 位运算符、三元运算符 - 控制结构 - 条件语句:if-else、switch-case - ...

    最新java基础教程

    - 整型:`byte`, `short`, `int`, `long` - 浮点型:`float`, `double` - 字符型:`char` - 布尔型:`boolean` - 变量声明与初始化:讲解变量的作用域、生命周期以及变量命名规则。 3. **控制结构** - 条件...

    java全能速查宝典.pdf

    - 整型:`byte`, `short`, `int`, `long` - 浮点型:`float`, `double` - 字符型:`char` - 布尔型:`boolean` 2. **变量与常量** - 变量声明与初始化 - 类型转换 - 常量定义:`final` 3. **流程控制语句**...

    超声波程序

    - 定义了多个无符号整型变量用于存储时间、距离等信息。 - 定义了位变量`flag`用于标记是否接收到回波信号。 - 定义了字符数组`discode`和`positon`用于存储显示数据。 #### 3. **函数实现** - **Display()**...

    Reilly - C# Essentials, 2nd Edition

    - **类型**:C#支持多种数据类型,如整型(int)、浮点型(float)、字符串(string)等。 - **变量**:存储数据的容器,具有特定的数据类型。 - **表达式和运算符**:用于计算值的组合,例如算术运算符、逻辑运算符等。 -...

    php反射api.pdf

    - 参数:`$modifiers` 为整型,表示修饰符的值。 ##### 2. `ReflectionException` 类 - 这个类继承自标准的 `Exception` 类,并没有定义任何特定于反射的属性或方法。它的作用主要是当反射操作出现错误时抛出异常...

    反射学习资料

    // 输出:class [I (I代表整型数组) SimpleDateFormat f = new SimpleDateFormat("hh:mm:ss"); Class c1 = f.getClass(); // 获取f所对应的字节码 Class c2 = c1.getSuperclass(); // 获取c1的父类的字节码 ...

    Think in java 教程

    以上只是《Think in Java》教程中涵盖的部分知识点,实际教程内容更为详尽,涵盖了更多高级主题,如多线程、网络编程、反射和注解等。通过深入学习和实践,你将能够熟练掌握Java编程,并具备解决复杂问题的能力。

    Java期末复习——枚举与反射机制

    枚举类中的每个枚举成员都有一个默认的整型值,称为`ordinal`,表示其在枚举中的位置,从0开始。由于`Enum`类实现了`Comparable`接口,所以可以直接对枚举进行排序。 Java还提供了专门针对枚举的集合类:`EnumMap`...

    java基础必须掌握的问题.doc

    - **反射**:动态加载类并操作对象 - **注解**:提供元数据 - **枚举**:定义固定的常量集 - **泛型**:提供类型安全的容器 - **Lambda表达式**:简化函数式编程 - **Stream API**:处理集合数据的新方式 - **模块...

    Java 教材中的例程.zip

    - 数据类型:整型、浮点型、字符型、布尔型 - 运算符:算术、比较、逻辑、位操作 - 控制流语句:if-else、switch、for、while 3. **ch03** - 类与对象 - 类的定义、构造器和访问修饰符 - 对象的创建与销毁 - ...

    怎样用Jvm处理Java数组.doc

    数组的维度由方括号的数量表示,因此`[I`代表一维整型数组。 有趣的是,当我们试图使用反射API来查看数组类`[I`的成员时,我们会发现它没有任何声明的字段、方法、构造函数或注解,并且它的父类是`java.lang.Object...

    Java的反射机制---动态调用对象的简单方法

    接着,我们使用`getMethod`方法获取`getAge`方法的`Method`对象,创建一个包含参数的数组,并通过`invoke`方法调用该方法,最后将结果输出。 在实际应用中,反射常用于框架开发、插件系统、测试工具以及需要动态...

    初始java第一讲

    以上只是Java开发基础的冰山一角,随着学习深入,你将接触到更高级的概念,如网络编程、数据库操作、反射、泛型、注解、Lambda表达式、Java 8的新特性等。在"初始Java第一讲"的PPT中,通常会涵盖这些基础内容,帮助...

    Java常用工具类(免费)

    采用快速排序算法对整型数组进行排序,这是一种高效的排序算法。 ##### 6. 二分法查找值在数组中的位置:`int binarySearch(int[] source, int key)` 通过二分查找算法,在已排序的数组中查找指定的值。 ##### 7. ...

    java基础系统性学习

    - **数据类型**:包括整型(byte、short、int、long)、浮点型(float、double)、字符型(char)和布尔型(boolean)。 - **运算符**:包括算术运算符、比较运算符、逻辑运算符、位运算符等。 - **流程控制**:...

Global site tag (gtag.js) - Google Analytics