因项目需要,有时候需要进行很多数据的格式化匹配,有时候一个类的成员变量超过20个或者100个,只有使用反射的机器来处理了,不然的话手指会受不了的

 

具体的代码:

for (Field field : VOUser.class.getFields()) {
            try {
                if (userObject.get(field.getName()) != null)
                    field.set(outUser, (String) userObject.get(field.getName()));
            } catch (IllegalArgumentException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
        }

官方使用说明:

Filed类: 该类用于反射java类内的成员变量。

    获得Field 对象实例的方法:  class.getField("FieldName")       class.getFields()

                                                                getDeclaredField("name")   (当成员不可见时,调用该方法仍不能操作变量  setAccessible(true))

对成员变量进行操作方法:  field.get(实例名);    field.set(实例名,value)