4
BigInteter太大而無法轉換爲整數。但是我必須在HashMap
中存儲帶有ID(SHA 512)的對象,並且需要一個沒有多次衝突的散列函數。使用BigInteger覆蓋public int hashCode()
我試過了。但是,我不確定是否沒有集羣。
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
Advertisement other = (Advertisement) obj;
return this.getId().equals(other.getId());
}
@Override
public int hashCode() {
return new BigInteger(getId(), 16).hashCode();
}
會轉換成整數(bi.intValue())更有效嗎?
thx我以爲是這樣 – headgrowe 2012-04-24 01:15:06