青豆小说

手机浏览器扫描二维码访问

第十一章集合框架篇2024年Java求职面试与工作编程要点实录(第1页)

【Java集合框架的3个核心问题】

1、比较arrayList、LinkedList和Vector的异同?

2、谈谈hashmap和Treemap的实现原理?

3、如何选择合适的集合类?

……

第四篇:集合框架(3个)

1、比较arrayList、LinkedList和Vector的异同?

相同点:

三者都实现了List接口,存储数据的方式都是基于动态数组的形式。

当元素数量过当前数组长度时,会在内存中分配一块更大的内存…

将原有数组中的数据复制过去,释放原数组,然后将新元素放到新数组中。

不同点:

1)arrayList和VenetkedList是双向链表。

2)arrayList和VenetkedList不支持。

3)arrayList在内存不足时,扩容为原来的1.5倍,Vector扩容为原来的2倍。

而LinkedList在内存上更加优化,因为LinkedList的节点不需要连续存储。

4)arrayList和LinkedList不是线程安全的,而Vector是线程安全的。

2、谈谈hashmap和Treemap的实现原理?

hashmap和Treemap,是Java中两种常用的map实现。

它们各自有着,独特的实现原理和使用场景。

一、hashmap:

hashmap是基于哈希表实现的map接口。

它允许使用nu11键和nu11值。

hashmap不保证映射的顺序,特别是它不保证该顺序恒久不变。

hashmap的实例,有两个参数影响其性能,即初始容量和加载因子。

初始容量,是哈希表在创建时的容量;

加载因子,是哈希表在其容量自动增加之前,可以达到多满的一种尺度。

当哈希表中的条目数,过了加载因子与当前容量的乘积时…

哈希表就会进行rehash操作;

也就是创建一个新的数组,然后将原数组中的数据,重新映射到新数组中。

hashmap的核心数据结构,是一个node数组。

每个node,都保存了键值对信息,以及指向下一个node的引用。

在hashmap中,通过key的hashcode经过一定的计算后得到数组下标…

然后,在对应的数组位置上,进行存储。

如果,计算出的数组下标位置,已经存在元素,那么就在这个位置形成链表。

当链表长度太长(默认是8)时,链表就转换为红黑树,这样可以大大提高查询的效率。

二、Treemap:

Treemap是基于红黑树实现的map接口。

热门小说推荐
娇医

娇医

作品简介...

您的爸爸已到位[综]

您的爸爸已到位[综]

不知道是哪只混蛋放出的消息,说是吃了吸血鬼的心脏就能长生不老。而我作为蓝星上最后一只吸血鬼,非常丢分的被奇怪的东西挖去了心脏为了复活,我踏上了一条危险而又怪异的试炼之路ps大家可以从第五章开始看,前四章就是挖了个坑,可看可不看。另,女主刚高中毕业,一开始还是比较天真的,后面经过社会的捶打,会有变化...

快穿攻略之黑化女配要洗白

快穿攻略之黑化女配要洗白

作品简介哥哥,我是你亲妹妹吗?他心头一跳当然是了!  那哥哥给我买辆跑吧,当我生日礼物。妹妹笑眯眯的。  你说什么?给我买辆跑。各位书友要是觉得快穿攻略之黑化女配要洗白还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦!...

四合院:傻柱重生之这饭盒不能给

四合院:傻柱重生之这饭盒不能给

简介关于四合院傻柱重生之这饭盒不能给重生到1965年,傻柱回味过去凄惨的一生,立志这辈子一定不同!寡妇还想要饭盒?没门!他妹妹还想吃呢!寡妇让他养孩子,交学费?没门!他要留给自己的儿子花。一大爷聋老太要他养老?没门!养老关他屁事。自己娶妻生子,舒舒服服过一辈子。只是上辈子的爱人娄晓娥他该怎么做曹贼呢?...

探秘全球从缅甸宝藏开始

探秘全球从缅甸宝藏开始

12323cc一朝偶得寻宝术,13133cc全球宝藏入我身。69986cc各位书友要是觉得探秘全球从缅甸宝藏开始还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦!...

修仙:从就职德鲁伊开始

修仙:从就职德鲁伊开始

人法地,地法天,天法道,道法自然。修仙问道要向自然中去寻取。而当从大自然中获取力量的德鲁伊和道法自然的寻道者相互融合后,会产生什么样的变化?野性变化碰上了胎化易形役使元素碰上了五行大遁再生术碰上了起死回生乐文小说网m1een9com各位书友要是觉得修仙从就职德鲁伊开始还不错的话请不要忘记向您QQ群和微博里的朋友推荐哦!...

每日热搜小说推荐