hashtabe,hashmap,等为什么要用hash算法
如果是为了2分查找算法,生成一个整数, 好做排序的话, 那么每个字符实际上都对应一个assiic码值
比如
ac = 6163
bb = 6262
因此就算不用hash散列算法 也不会重复呀. 更何况,hash算法也不能保证不发生碰撞. 这个情况下, 为什么还要使用hash呢??? 求明白的给个原因
[解决办法]
public V get(Object key) {
if (key == null)
return getForNullKey();
int hash = hash(key.hashCode());
for (Entry<K,V> e = table[indexFor(hash, table.length)];
e != null;
e = e.next) {
Object k;
if (e.hash == hash && ((k = e.key) == key
[解决办法]
key.equals(k)))
return e.value;
}
return null;
}
static int indexFor(int h, int length) {
return h & (length-1);
}