當前位置:編程學習大全網 - 網站源碼 - 關於Java的HashSet和TreeSet

關於Java的HashSet和TreeSet

set 集合 的存儲特性上是不允許壹個集合中存在兩個相同的數據的,即使是null數據也只允許有壹個

而set集合判定兩個對象是否相同就是依據其hashcode。對象的hashcode由對象的hashcode方法取值並不是說

重寫了hashcode方法就壹定不會出現相同的情況比如

class?student{

private?id;

private?age;

public?int?hashcode(){

return?id*age;

}

}

現在有兩個學生 student1 {id=2,age=3} student2 {id=3,age=2}

他們的hashcode計算出來都是6 這兩個對象就不能同時存在壹個set集合

set集合取hashcode值為兩個對象是否相等的判定標準。不調用compare()和equals()

  • 上一篇:華為悅盒光纖口沒有dts輸出
  • 下一篇:linux下默認安裝的rpm包存放在哪個目錄,卸
  • copyright 2024編程學習大全網