JAVA八股——J集合篇

目录

一、集合体系

二、List

1.ArrayList底层的实现原理是么.

[2.ArrayList list=new ArrayList(10)中的list广容几次](#2.ArrayList list=new ArrayList(10)中的list广容几次)

​编辑3.如何实现数组和List之间的转换​编辑

​编辑

[4.ArrayList 和 LinkedList 的区别是什么?](#4.ArrayList 和 LinkedList 的区别是什么?)

三、Map

1.说一下HashMap的实现原理?

2.HashMap的jdk1.7和jdk1.8有什么区别?

3.HashMap的put方法的具体流程

4.HashMap的扩容机制

5.HashMap的线程安全问题


一、集合体系

二、List

1.ArrayList底层的实现原理是么.

2.ArrayList list=new ArrayList(10)中的list广容几次

3.如何实现数组和List之间的转换

4.ArrayList 和 LinkedList 的区别是什么?

底层数据、结构效率、空间线程、是否安全

三、Map

1.说一下HashMap的实现原理?

数组+链表或者数组+红黑树。添加元素时,根据key计算下标,把value添加到对于下标的位置,如果出现相同的值,就在这个下标处开一个链表或者红黑树挂载。

2.HashMap的jdk1.7和jdk1.8有什么区别?

JDK1.8之前采用的拉链法,数组+链表

JDK1.8之后采用数组+链表+红黑树,链表长度大于8且数组长度大于64则会从链表转化为红黑树

3.HashMap的put方法的具体流程

4.HashMap的扩容机制

5.HashMap的线程安全问题

相关推荐
2601_966949654 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
晨曦中的暮雨6 小时前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
喵了几个咪6 小时前
GoWind CMS 拆解:在 Go 里给 TipTap 搭一套 Yjs 协同后端
开发语言·后端·golang
程序员清风6 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
文丑颜不良啊7 小时前
LeetCode876~900题目解析
java·leetcode
aloha_7898 小时前
Java 基础、集合、异常与 JUnit 5 速查
java·junit·sqlserver
知守观8 小时前
设计模式实战:从真实老项目中看标准模板方法与工厂的落地
java·spring·设计模式
2601_962885728 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
独隅8 小时前
Claude API 实战教程:从入门到完整项目
android·java·数据库·claude·claude code
Wang's Blog9 小时前
Java 项目实战: 交友项目 - 圈子功能实现:总结
java·开发语言·交友