gpt4 book ai didi

java - 如何比较两个对象并获取更改的字段

转载 作者:行者123 更新时间:2023-11-30 05:43:15 28 4
gpt4 key购买 nike

在这里,我记录对特定对象记录所做的更改。因此,我比较旧记录和更新记录,以将更新字段记录为字符串。知道我该怎么做吗?

最佳答案

我找到了如下解决方案:

  private static List<String> getDifference(Object s1, Object s2) throws IllegalAccessException {
List<String> values = new ArrayList<>();
for (Field field : s1.getClass().getDeclaredFields()) {
field.setAccessible(true);
Object value1 = field.get(s1);
Object value2 = field.get(s2);
if (value1 != null && value2 != null) {
if (!Objects.equals(value1, value2)) {
values.add(String.valueOf(field.getName()+": "+value1+" -> "+value2));
}
}
}
return values;
}

关于java - 如何比较两个对象并获取更改的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55294391/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com