黑马程序员技术交流社区
标题:
java的反射机制想实现一个功能:遍历一个Map
[打印本页]
作者:
hello world
时间:
2012-8-7 14:14
标题:
java的反射机制想实现一个功能:遍历一个Map
谁的反射机制学的好,给举个例子,怎样通过反射来遍历Map
作者:
余明辉
时间:
2012-8-7 16:26
本帖最后由 余明辉 于 2012-8-7 16:27 编辑
import java.lang.reflect.Method;
import java.util.HashMap;
public class Demo {
public static void main(String[] args) throws Exception {
//map的字节码
Class clazz = Class.forName("java.util.HashMap");
//创建map实例
HashMap instance = (HashMap)clazz.newInstance();
//拿到put方法
Method putMethod = clazz.getMethod("put", Object.class,Object.class);
//添加
putMethod.invoke( instance, new Object[]{"a",1} );
putMethod.invoke( instance, new Object[]{"b",2} );
putMethod.invoke( instance, new Object[]{"c",3} );
//检查是否添加进去
System.out.println(instance);
//拿到get方法
Method getMethod = clazz.getMethod("get", Object.class);
//遍历
System.out.println("a = " + getMethod.invoke(instance , "a"));
System.out.println("b = " + getMethod.invoke(instance , "c"));
System.out.println("b = " + getMethod.invoke(instance , "c"));
}
}
试着做了下,不知道你是不是想要这种结果
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2