我有一個類似于下面提到的 POJO。這里我指的Set是POJO1. 我知道 set 不包含重復項。我需要覆蓋equals()和hashCode()方法POJO2嗎?Set除非我們覆蓋 equals 和 hashCode 方法,否則在這里使用 a并沒有真正的幫助?請幫助我在這方面多了解一點!public class POJO1 { private String name; private Set<POJO2> pj2; public Company(){ pj2 = new HashSet<>(); } //setter and getter methods }
2 回答

當年話下
TA貢獻1890條經驗 獲得超9個贊
是的,Java 了解哪些對象是重復的唯一方法是調用equals()
方法。equals()
檢查兩個對象的引用指向內存中相同位置的默認實現。
但是根據您的確切實現,您Set
可能需要覆蓋hashCode/equals
或實現Comparable
接口。
由于您將對象POJO2
放入HashSet
您需要驗證hashCode
等于methods in
POJO2` 類。
添加回答
舉報
0/150
提交
取消