欢迎光临散文网 会员登陆 & 注册

千锋教育Java入门全套视频教程(java核心技术,适合java零基础,Java

2023-07-17 19:08 作者:每天都要吃八顿  | 我要投稿

165

 HashMap是一个键值对集合。jdk8底层基于数组+链表+红黑树。

  put方法,根据hash值计算位置(高十六位和低十六位做了一个异或运算,hash结果跟n-1做位与运算,hashMap能保证n一定是2的多少次方,默认容量是16,加载因子是0.75f,每次扩容扩的是2倍。带参构造会调一个方法把你指定容量改为比你大最近的2的多少次方。),判断这个位置的元素的key和我要加入的Key是否重复,重复就替换,不重复就放进去。(单节点,链表,树)

  链表在长度大于8的时候转红黑树(桶的个数要达到64,否则扩容),小于6转链表。

千锋教育Java入门全套视频教程(java核心技术,适合java零基础,Java的评论 (共 条)

分享到微博请遵守国家法律