java - 哈希图的大小是多少?我什么时候分配它?
问题描述
对于作业,我需要使用哈希图,我想问几个问题:
- Hashmaps 是否像数组一样具有固定大小?
- 它们是否像列表一样,您始终可以在其中向哈希图中添加新项目?
- 创建新的哈希图时是否需要指定大小?
解决方案
所以 :
- 不,没有固定大小
- 是的,您可以根据需要添加任意数量的元素,直到达到最大内存
- 不,但你不能给出初始容量,如果你想添加大量数据,这将使地图不会延长很多时间
a的2个键HashMap
是:
- 是哈希表中的
capacity
桶数,初始容量就是哈希表创建时的容量(DEFAULT_INITIAL_CAPACITY = 16
) - 是
load factor
一种衡量哈希表在其容量自动增加之前允许达到的程度。当哈希表中的条目数超过负载因子和当前容量的乘积时,对哈希表进行重新哈希(即重建内部数据结构),使哈希表具有大约两倍的桶数。(DEFAULT_LOAD_FACTOR = 0.75f
)
推荐阅读
- mysql - ubuntu 20 上的专用服务器,带有 plesk obsidian 18.xx
- react-native - React Native Paper HelperText 在不可见时会占用空间
- python - 在 Windows 上使 Python 函数超时的最简单方法
- python - 如何使用自定义 CTC 层正确保存和加载模型(Keras 示例)
- html - 如何用空格开始网格?CSS
- wordpress - Cpanel 和 whm 被黑了但是
- android - 重新加载 Android Webview
- javascript - 如何在 vue js 中重用我的模态组件(重新渲染问题)
- html - 当我向下滚动时,我的网站加载/白屏 1-2 秒
- sql - 如何在 SQL 查询中自动将 $10k 转换为 10000