集合晨考day18

ops/2025/1/1 4:15:39/

1.JDK8HashMap数据结构
数组 + 单向链表 + 红黑树
2.HashMap特点(是否有序,是否可为null,是否可重复,
是否线程安全,初始容量多少,负载因子的含义,扩容多
少)
无序 可以为null 键不能重复 值可以重复 线程不安全 初始数组长度为16 负载因子
0.75 表示数组的使用率达到75% 就扩容 扩容为原数组长度的2倍
3.HashMap和Hashtable的区别
HashMap初始化长度为0的数组 第一次添加元素数组初始化为16
Hashtable初始化长度为11的数组
HashMap线程不安全 Hashtable线程安全
HashMap扩容2倍 Hashtable扩容2倍 + 1
4.Properties类,推荐使用什么方法存放数据,不推荐使
用什么方法,为什么
setProperty() 不推荐使用put 或者 putAll 方法 因为这两个方法允许添加非String数

5.遍历HashMap的几种方式
1.获取所有的键 keySet()
2.获取所有的值 values()
3.获取所有建制对的组合 entrySet()
以上三种的迭代器形式
6.说出你所知道的集合体系中的接口和实现类分别都有哪

Collection
List ArrayList LinkedList Vector
Set HashSet LinkedHashSet Treeset

Map HashMap LinkedHashMap TreeMap Hashtable Properties
7.HashMap添加元素的过程,什么时候扩容,什么时候转
换红黑树,什么时候取消转换红黑树?
使用hash值对数组长度-1 进行与运算 得到存在数组中的下标
如果此位置没有数据 则直接存放
如果此位置有数据
比较是否为完全相同的键
如果键完全相同 则直接覆盖
如果键不同 向下添加 判断为树节点 还是链表节点 分别以不同的方式添加
数组的使用率达到75%
当链表的长度大于8 并且数组的长度大于64转红黑树
当链表的长度小于6
8.TreeMap存储自定义的数据类型 有什么要求
必须实现Comparable接口 或者 编写 实现Comparator接口的比较器 来定义比较规则
9.HashSet去除重复元素的依据是什么?
两个对象equals比较为true hashCode相同 则认为是重复的对象
10.Comparable和Comparator接口的区别?
Comparable接口属于自然排序 因为是直接在类中书写
Comparator属于非自然排序 因为是单独书写排序类


http://www.ppmy.cn/ops/145988.html

相关文章

uniapp 前端解决精度丢失的问题 (后端返回分布式id)

原因: 后端使用分布式id, id为19位数,导致精度丢失 ,前端解决方法 这个是通过浏览器请求回来的数据,这个时候id 数据已经丢失了,在数据库查询不到,在调获详情接口的时候会有问题 实际的: 解决…

Docker--Bitnami/redis

Bitnami package for Redis What is Redis? Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. Overview of Redis⁠ Disclaimer: Redis is a…

1、消息队列框架:Redis - 开源项目研究文章

Redis(Remote Dictionary Server,远程字典服务器)是一个开源的高性能键值对(Key-Value)数据库。它以其极高的速度和可扩展性而闻名,支持数据结构如字符串(strings)、列表(lists)、集合(sets)、有序集合(sorted sets)、散列(hashes)、位图(bitmaps)、超日…

最新常见的图数据库对比,选型,架构,性能对比

图数据库排名 地址:https://db-engines.com/en/ranking/graphdbms 知识图谱查询语言 SPARQL、Cypher、Gremlin、PGQL 和 G-CORE 语法 / 语义 / 特性 SPARQL Cypher Gremlin PGQL G-CORE 图模式匹配查询 语法 CGP CGP CGP(无可选)1 CGP CGP 语义 子…

【每日学点鸿蒙知识】grid里面的item支持拖动问题、WebView回调问题、获取页面名称、弹幕效果实现、修改App输出路径 |

1、HarmonyOS grid里面的item支持拖动问题? 想要grid里面的item支持拖动,拖出来后可以删除,下面的代码就是你们上次给我提供的,正常情况下是可以使用的但是,往下拖的过程中遇到了TextInput后,gridItem的onDragMove就不会走了,我给TextInput设置了draggable(false)后…

基于STM32的智能垃圾分类与投放系统设计

目录 引言系统设计 硬件设计软件设计系统功能模块 垃圾识别与分类模块投放指引模块数据存储与管理模块系统实现 硬件实现软件实现系统调试与优化结论与展望 1. 引言 随着城市垃圾管理问题日益严重,垃圾分类已成为提高资源回收效率、减少环境污染的重要手段。传统的…

SuperMap iClient3D for Cesium等高线标注

kele 前言 在三维地形分析中,等高线分析是一种非常重要的分析方法,它能直观的表达出地形的高低起伏特征,在三维系统中受到广泛应用。在SuperMap iClient3D for Cesium中,等高线分析是前端GPU分析,能够分析并渲染出等高…

如何使用流式渲染技术提升用户体验

提示:记录工作中遇到的需求及解决办法 文章目录 什么是流式渲染?Node.js 实现简单流式渲染声明式 Shadow DOM,不依赖 javascript 实现react 实现流式渲染总结提示:以下是本篇文章正文内容,下面案例可供参考 什么是流式渲染? 流式渲染主要思想是将HTML文档分块(chunk)…