public V put(K key, V value) {
//假如table为空
if (table == EMPTY_TABLE) {
inflateTable(threshold);
}
//假如键为空
if (key == null)
return putForNullKey(value);
int hash = hash(key);
int i = indexFor(hash, table.length);
//遍历table[i]
for (Entry<K,V> e = table[i]; e != null; e = e.next) {
Object k;
if (e.hash == hash && ((k = e.key) == key || key.equals(k))) {
V oldValue = e.value;
e.value = value;
e.recordAccess(this);
return oldValue;
}
} modCount++;
//添加数组
addEntry(hash, key, value, i);
return null;
}
相关文章
- 《jQuery风暴》第2章 必须知道的JavaScript知识
- Java基础知识强化之集合框架笔记54:Map集合之HashMap集合(HashMap
)的案例 - java中你不知道的字符串知识!!!
- Java基础知识强化之集合框架笔记56:Map集合之HashMap集合(HashMap)的案例
- Java基础知识强化之集合框架笔记54:Map集合之HashMap集合(HashMap)的案例
- html你可能还不知道的一些知识点
- 关于美颜SDK,还有这些你不知道的知识
- (转载)Unity3D所要知道的基础知识体系大纲,可以对照着学习,不定期更新
- PHP小白必须要知道的php基础知识(超实用)
- SEO友情链接交换技巧 专业SEO交换友情链接必须要知道的一些SEO知识