一、使用场景
例如,有业务需求要记录某一个表单每次修改的操作记录,详细到每个字段的值有什么改变。
二、代码示例
类A定义了很多个属性。实例化出了A的两个对象B和C,并且B与C中的字段值有些相同有些不同。比较出B和C哪些字段值相同哪些不同。
Field[] fields = A.class.getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);
Object valueOfB = field.get(B);
Object valueOfC = field.get(C);
if (valueOfB.equals(valueOfC)) {
System.out.println("属性" + field.getName() + "的值在B和C中相同,值为:" + valueOfB);
} else {
System.out.println("属性" + field.getName() + "的值在B和C中不同,值分别为:B=" + valueOfB + ",C=" + valueOfC);
}
}
版权声明:本文为qq_37132495原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。