1 回答
TA贡献1804条经验 获得超3个赞
正如@DawoodibnKareem 所问,我将发布解决方案:
总是在其中得到“false”的原因是if ( implsNaConfig.equals(implsNoApto) )因为我的CcustoPrestadorOuImplDTO类没有equals实现该方法。
所以我编辑了类文件并自动生成了 equals 方法并且它起作用了。
CCustoPrestadorOuImplDTO 类中的 equals 方法:
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
CcustoPrestadorOuImplDTO that = (CcustoPrestadorOuImplDTO) o;
return Objects.equals(cdCcusto, that.cdCcusto) &&
Objects.equals(deCcusto, that.deCcusto) &&
Objects.equals(grupoOperativo, that.grupoOperativo) &&
Objects.equals(deGrupoOperativo, that.deGrupoOperativo);
}
这是 HashCode() 方法:
@Override
public int hashCode() {
return Objects.hash(cdCcusto, deCcusto, grupoOperativo, deGrupoOperativo);
}
这真的很简单,但我什至不认为这是问题的原因。
谢谢大家。
添加回答
举报