Java学习
第十六天
LinkedList — 双向链表
方法
和ArrayList有相同的方法
LinkedList 两端数据操作方法
addFirst(数据);addLast(数据);getFirst();getLast();removeFisrt()
removeLast()
效率
两端效率高
HashMap — 哈希表、散列表
存放键值对数据,用键来快速定位数据,来提取键对应的值
键:不重复,无序
Hashmap中的key-value都是储存中entry数组中的
Hashmap的实现不是同步的,意味着它不是线程安全的
Hashmap的实例有两个参数影响其性能:初始容量,和加载因子
方法
put(key,value)放入键值对数据,重复的键会覆盖旧值
get(key)获得键对应的值,键不存在,得到null
remove(key)移除键值对数据,返回被移除的值
size()键值对的数量
hashCode()
hashCode()是object的方法,默认实现是用内存地址作为哈希值
可以重写方法来获得相同的哈希值
哈希运算中要有相同的哈希值,才能保证计算出相同下标值,并且要equals()也要相等(equals方法也要重写),才可以覆盖旧值,否则会链表连接。
重写hashCode的惯用算法:(x.y是变量的值)
浙公网安备 33010602011771号