刚发现set的底层是通过map实现的

之前开发很少有看源码的习惯,现在开始有时间看一点。之前一直觉得Set和Map集合很像,看了看JDK的源码,才知道了原来Set的底层就是通过Map来实现的。

HasSet的构造方法

可以看到实际构造HasSet的时候都是通过构造一个HasMap来实现

还有添加元素的add、remove等方法,也是通过map的put、remove等方法给HasSet集合里添加

基于树的TreeSet和TreeMap也是一样


还有一点就是TreeMap的put方法

可以发现他会给put进来的元素按树的左子树比又子树小的规则放置。


做开发源码还是要学着看的,即便刚开始只能看一些简单的,但总会有提升的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值