java – 使用ComparisonChain对Object.equal()\u0026	
发布时间:2020-12-14 16:38:36 所属栏目:Java 来源:网络整理
导读:我刚刚开始使用谷歌的番石榴收藏( ComparisonChain和 Objects).在我的pojo中,我正在等待equals方法,所以我先做了这个: return ComparisonChain.start() .compare(this.id,other.id) .result() == 0; 但是,我也意识到我也可以用这个: return Objects.equal(
我刚刚开始使用谷歌的番石榴收藏(
ComparisonChain和
Objects).在我的pojo中,我正在等待equals方法,所以我先做了这个:
return ComparisonChain.start() .compare(this.id,other.id) .result() == 0; 但是,我也意识到我也可以用这个: return Objects.equal(this.id,other.id); 而且,当比较链更好的时候,我看不清楚,因为你可以轻松地添加更多的条件,如: return Objects.equal(this.name,other.name) && Objects.equal(this.number,other.number); 唯一的好处是我可以看到,如果你特别需要一个int返回.它有两个额外的方法调用(起始和结果),并且对于noob来说更复杂. 比较链中有没有明显的好处? (是的,我也用适当的Objects.hashcode()覆盖哈希码 解决方法
ComparisonChain允许您通过比较多个属性来检查对象是否小于或大于另一个对象(如通过多个列排序网格).
在实现Comparable或Comparator时应该使用它. Objects.equal只能检查相等. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |