import java.lang.reflect.Field;
public class test06 {
/*
* 将任意一个对象中的所有String类型的成员变量所对应的字符串内容中的"a"改为"b" (封装成一个方法) Emp对象 empno ename job
* Emp emp=new Emp(“7788”,”smaith”,”manager”,5000,.....);
* updateMemberOfString(emp); “7788”,”smbith”,”mbnbger”,5000,..... 方法原型如下:
*/
/**
* @param obj,要修改的对象
*/
public static void changeValue(Object obj) {
// 利用反射获取对象所有的属性对象
Class c = obj.getClass();
Field[] fields = c.getDeclaredFields();
try {
for (Field field : fields) {
if (field.getType() == String.class) {
field.setAccessible(true);
String value = (String) field.get(obj);
// 进行替换
String replaceValue = value.replaceAll("a", "b");
field.set(obj, replaceValue);
field.setAccessible(false);
}
}
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
将任意一个对象中的所有String类型的成员变量所对应的字符串内容中的“a“改为“b“(封装成一个方法)
最新推荐文章于 2022-08-10 14:17:39 发布