通过java反射获取任意对象的字段名及字段值
来源:互联网 发布:java 图片加密 编辑:程序博客网 时间:2024/06/06 08:39
import java.lang.reflect.Field;public class ReflectClass3 { /** * @param args */ public static void main(String[] args) { Person p = new Person(1, "ctl", true, 'c', 2.0f, 2.0, 1L, (short) 1, (byte) 1); p.setId(0); p.setName("张三"); p.setIsMen(true); p.setCh('c'); p.setFloat_(2.0f); p.setDouble_(3.0); p.setLong_(2l); p.setShort_((short) 1); p.setByte_((byte) 2); reflect(p); } public static void reflect(Object obj) { if (obj == null) { return; } Field[] fields = obj.getClass().getDeclaredFields(); String[] types1 = {"int", "java.lang.String", "boolean", "char", "float", "double", "long", "short", "byte"}; String[] types2 = {"Integer", "java.lang.String", "java.lang.Boolean", "java.lang.Character", "java.lang.Float", "java.lang.Double", "java.lang.Long", "java.lang.Short", "java.lang.Byte"}; for (int j = 0; j < fields.length; j++) { fields[j].setAccessible(true); // 字段名 System.out.print(fields[j].getName() + ":"); // 字段值 for (int i = 0; i < types1.length; i++) { if (fields[j].getType().getName() .equalsIgnoreCase(types1[i]) || fields[j].getType().getName().equalsIgnoreCase(types2[i])) { try { System.out.print(fields[j].get(obj) + " "); } catch (Exception e) { e.printStackTrace(); } } } } }}public class Person { public int id; public String name; public boolean isMen; public Character ch; public Float float_; public Double double_; public Long long_; public Short short_; public Byte byte_; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public boolean getIsMen() { return isMen; } public void setIsMen(boolean isMen) { this.isMen = isMen; } public Character getCh() { return ch; } public void setCh(Character ch) { this.ch = ch; } public Float getFloat_() { return float_; } public void setFloat_(Float float_) { this.float_ = float_; } public Double getDouble_() { return double_; } public void setDouble_(Double double_) { this.double_ = double_; } public Long getLong_() { return long_; } public void setLong_(Long long_) { this.long_ = long_; } public Short getShort_() { return short_; } public void setShort_(Short short_) { this.short_ = short_; } public Byte getByte_() { return byte_; } public void setByte_(Byte byte_) { this.byte_ = byte_; } public Person(int id, String name, Boolean isMen, Character ch, Float float_, Double double_, Long long_, Short short_, Byte byte_) { super(); this.id = id; this.name = name; this.isMen = isMen; this.ch = ch; this.float_ = float_; this.double_ = double_; this.long_ = long_; this.short_ = short_; this.byte_ = byte_; } public Person() { super(); }}
0 0
- 通过java反射获取任意对象的字段名及字段值
- 通过java反射获取任意对象的字段名及字段值
- 通过java反射获取任意对象的字段名及字段值
- 通过java反射获取任意对象的字段名及字段值
- 通过java反射获取任意对象的字段名及字段值
- 通过java反射获取对象的字段名和字段值
- 通过PropertyDescriptor反射进行字段名值的获取及设置
- 通过反射获取和设置对象私有字段的值?
- java反射动态获取字段名并设置字段值
- java反射通过字段名获取set、get方法
- java 反射获取对象的字段和值
- 反射获取对象实例的字段信息和字段值
- java通过反射Method、属性字段名、值、数据类型
- 如何通过反射获取和设置对象私有字段的值?
- Java反射 获取某个类的属性值、字段名、注解等常用代码
- Java反射获取字段、设置字段以及获取字段的值
- java中通过反射遍历属性字段及值
- Vb.Net 通过反射获取类的字段值
- 有些网站,禁用cookie就无法登录
- 使用Git在GitHub上管理代码
- 为什么文件名要小写?
- 编程的开始!
- 《鸟哥的Linux学习:基础篇》第二章主机规划与磁盘分区 读书笔记
- 通过java反射获取任意对象的字段名及字段值
- centos7链接secureCrt
- Java多线程系列--“基础篇”01之 基本概念
- 技术的热门度曲线
- Variable is not assignable (missing__block type specifier)
- Error[e46]: Undefined external "?V1" referred in AF
- JavaScript回调函数传参的方法
- c3p0数据库连接池使用
- img水平居中、居左、居右方法