通过反射获取Field后,可以进一步修改相应的值。 示例:修改字符串中的y为y_new 1、Bean public class FieldBean { public String name = 'yy'; public String address = 'yybeijingyy'; @Override public String toString() { // TODO Auto-generated method stub return name + ', ' + address; } 2、Client (1)首先得到Bean对象 FieldBean fb = new FieldBean(); (2)通过反射获取FieldField[] fields = fb.getClass().getFields(); (3)对Field进行遍历for(Field field : fields){ //如果是String类型 if(field.getType() == String.class){ String old_value = (String) field.get(fb); String new_value = old_value.replace('y', 'y_new'); field.set(fb, new_value); } } (4)结果如下: y_newy_new, y_newy_newbeijingy_newy_new |
|