这是成员变量反射综合案例这节, 获取字段的类型,为什么字节码类型的比较要用==,而不用equals,二者有什么区别,什么时候用equals,什么时候用==,有些疑惑,请教高手解惑,感谢
- public static void changeStringValue(Object obj) throws Exception
- {
- //扫描成员变量Field 类
- Field[] fields=obj.getClass().getFields();
- for(Field field:fields)//加上类型Field
- {
- //if(field.getType().equals(String.class));//获取字段的数据类型(不用equals比较)
- if(field.getType()==String.class)//为什么字节码类型的比较要用==,而不用equals,二者有什么区别
- {
- String oldValue=(String)field.get(obj);
- String newValue=oldValue.replace('b', 'a');
- field.set(obj, newValue);
-
- }
-
- }
- }
复制代码 |