博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java源码系列(一)集合
阅读量:6457 次
发布时间:2019-06-23

本文共 452 字,大约阅读时间需要 1 分钟。

(一)hashCode()和equals

如上:在hashmap的底层实现是链表+数组:

(二)那些年实现过的源码

Stringbuffer(Stringbuilder):内部由数组实现  ;扩容为每次变为原来的2倍+2;区别Stringbuffer的方法线程安全,使用了重量级锁synchronized,修饰了所有方法

ArrayList(Vector):内部是数组,每次扩容为原来的1.5,vector线程安全,

hashmap的装填因子:0.75

以上是jdk1.8的源码,当拉米塔=0.5时,也就是期望和方差都是0.5时;

二:hashmap和hashtable  以及Properties

hashmap继承自abstructMap抽象类,线程不安全  ,而hashtable继承自dictionary接口线程安全

hashMap的putval方法:由put方法包装,因为n是2的整数次幂,所以这里使用了n-1,就得到了,所有位都是1,然后进行与运算;

三,强软弱虚引用

四,容器的同步控制和只读设置

你可能感兴趣的文章
CODE[VS] 1294 全排列
查看>>
<<The C Programming Language>>讀書筆記
查看>>
JS详细入门教程(上)
查看>>
Android学习笔记21-ImageView获取网络图片
查看>>
线段树分治
查看>>
git代码冲突
查看>>
利用android studio 生成 JNI需要的动态库so文件
查看>>
poll
查看>>
解析查询 queryString 请求参数的函数
查看>>
学生选课系统数据存文件
查看>>
我的毕设总结所用的技术和只是要点 基于stm32F4的AGV嵌入式控制系统的设计
查看>>
JMeter—断言
查看>>
C++的新类创建:继承与组合
查看>>
odoo 权限设置
查看>>
asp操作access提示“无法从指定的数据表中删除”
查看>>
git bash 风格调整
查看>>
bzoj4589 Hard Nim
查看>>
java实现pdf旋转_基于Java实现PDF文本旋转倾斜
查看>>
python time库3.8_python3中datetime库,time库以及pandas中的时间函数区别与详解
查看>>
贪吃蛇java程序简化版_JAVA简版贪吃蛇
查看>>