如果你在谈论比较值,我会考虑使用反射并逐个比较它们.
像这样的东西:
Field[] oldFields = oldInstance.class.getDeclaredFields();
Field[] newFields = newInstance.class.getDeclaredFields();
StringBuilder changes = new StringBuilder();
Arrays.sort(oldFields);
Arrays.sort(newFields);
int i = 0;
for(Field f : oldFields)
{
if(!f.equals(newFields[i]))
{
changes.append(f.getName()).append(" has changed.\n");
}
i++;
}
Run Code Online (Sandbox Code Playgroud)
此代码尚未经过测试.您可能需要获取字段中的值并进行比较,而不是仅仅将字段相互比较,但它应该在理论上起作用.
| 归档时间: |
|
| 查看次数: |
4597 次 |
| 最近记录: |