hashmap相关内容

Java - 关于冲突处理和 get() 方法的 HashMap 混淆

我正在使用 HashMap,但我无法直接回答 get() 方法在发生冲突时如何工作. 假设 n >1 个对象被放置在同一个 key 中.它们是否存储在 LinkedList 中?它们是否被覆盖,以便仅放置在该键中的最后一个对象不再存在?他们是否使用了其他碰撞方法? 如果将它们放在 LinkedList 中,有没有办法检索整个列表?如果没有,是否有其他的 Java 内置地图可供我执行此操 ..
发布时间:2022-01-08 14:40:07 Java开发

将 key=value 的字符串解析为 Map

我正在使用一个提供 XML 的 API,我需要从一个实际上是字符串的标签中获取地图.示例: 拥有 Billable=7200,Overtime=false,TransportCosts=20$ 我需要 ["Billable"="7200","Overtime=false","TransportCosts"="20$"] 问题是字符串是完全动态的,所以,它可以像 Overtime=t ..
发布时间:2022-01-08 14:39:59 Java开发

HashMap 的 containsKey 方式未按预期运行

今天我正在做一些寻路,当我不得不使用 contains() 来查找一个类 Coord 是否在另一个 keySet() 坐标.我发现当我使用预制方法 containsKey() 时,它根本无法按我的意愿工作.我做了一个测试以了解发生了什么,结果如下: HashMaptest = new HashMap();test.put(新坐标(3, 3), 新坐标(0, 0));S ..
发布时间:2022-01-08 14:39:51 Java开发

我可以在 Java 中的 HashMap 对象中存储多少个元素

我知道这取决于系统中的可用内存,也取决于良好的哈希函数,但总的来说,我想知道您使用过的最大映射是什么,以及它是否运行良好盒子或需要任何调整以使其正常工作. 解决方案 Java 中的 HashMap 最多可以有 2^30 个桶来存储条目 - 这是因为使用了桶分配技术java.util.HashMap要求bucket的个数是2的幂,由于Java中int是有符号的,所以最大正值是2^31 - 1 ..
发布时间:2022-01-08 14:39:28 Java开发

为什么我的 HashMap 允许重复键?

嘿,我正在使用 HashMap 来跟踪公告板上的服务和服务请求.但是,我必须有哈希码和等于错误,因为我得到了重复的键.谁能告诉这可能是为什么? keySet的内容: 服务:[1, 1, 6, 6, 3]请求:[8、7、6、5、8、4、5、6、2] 以下是相关代码: private static final HashMap服务 = 新哈希映射();...公共类广告{私有整数 ID;私 ..
发布时间:2022-01-08 14:39:20 Java开发

具有不同哈希值的键是否也映射到 HashMap 中的相同索引?

查看代码,特别是第 393 行,看起来不同的哈希值已映射到同一个索引.我的理解是哈希码用于确定要使用 HashMap 中的哪个桶,并且桶由具有相同哈希码的所有条目的链表组成.他们为什么要检查 e.hash == hash ? public V put(K key, V value) {如果(键 == 空)返回 putForNullKey(值);int hash = hash(key.hashCo ..
发布时间:2022-01-08 14:39:10 Java开发

如何在 Scala 中实例化 Unit?

我只想使用一些并发的 Set(似乎根本不存在).Java 使用 java.util.concurrent.ConcurrentHashMap 来实现该行为.我想在 Scala 中做类似的事情,所以我创建了 Scala HashMap(或 Java ConcurrentHashMap)的实例并尝试添加一些元组: val myMap = new HashMap[String, Unit]()myMa ..
发布时间:2022-01-08 14:39:00 Java开发

如何在关联后获取 clojure 数组映射以维护插入顺序?

我有一个 array-map 我正在 asoc 将一些值放入其中.在一定大小之后,返回的值是 PersistentHashMap 而不是原来的 PersistentArrayMap.我在一些网站上读到过这种行为.即使在 assoc 之后,有什么方法可以强制插入顺序? 我确实有一个单独的函数,它将接受一个 ash-map 和一个键向量,并按此顺序返回一个带有键的“新鲜" array-map,但 ..
发布时间:2022-01-08 14:38:54 其他开发

放入java HashMap时如何避免重新排序项目

我正在创建一个新地图并将字符串推入其中(没什么大不了的)-但我注意到随着地图的增长,字符串正在重新排序.是否可以停止这种重新排序,以便地图中的项目保留放置时的顺序? Mapx = new HashMap();x.put("a","b");x.put("a","c");x.put("a","d");x.put("1","2");x.put("1","3");x.pu ..
发布时间:2022-01-08 14:38:38 Java开发

hashCode、实现以及与 HashMap 的关系

所以我在这里问了另一个相关问题:java string hash function with avalanche effect,但我现在有一个不同的相关问题. 我在那个问题中确定的是 String 的 hashCode() 函数没有雪崩效应.这意味着,例如,如果我有字符串“k1"、“k2"、“k3",并且我在每个字符串上调用 hashCode(),则返回的值将是连续的. 现在,根据我对 ..
发布时间:2022-01-08 14:38:31 Java开发

排序键是哈希图中的日期条目

我有一个 hashMap,它具有以下值作为键 value(sql date , integer) 对: a.put("31-05-2011",67);a.put("01-06-2011",89);a.put("10-06-2011",56);a.put("25-05-2011",34); 当我尝试使用基于键对 hashMap 进行排序时:Map modified_a=new TreeMap(a ..
发布时间:2022-01-08 14:38:23 Java开发

Java HashMap 调整大小

假设我们有一些代码 类 WrongHashCode{公共 int 代码=0;@覆盖公共 int hashCode(){返回码;}}公共类重新散列{公共静态无效主(字符串 [] args){//初始容量为2,负载率75%HashMaphashMap=new HashMap(2,0.75f);WrongHashCode wrongHashCode=new ..
发布时间:2022-01-08 14:38:13 Java开发

如何在 Java 中拆分 HashMap

我想知道是否可以将 HashMap 拆分为更小的子图. 在我的例子中,我有一个 100 个元素的 HashMap,我想从原始元素创建 2 个(或更多)更小的 HashMap,第一个包含 0 到 49 的条目,第二个包含 50 到 99 的条目. 映射 bigMap = new HashMap ();//应该包含 'bigMap' 的 0 到 ..
发布时间:2022-01-08 14:38:05 Java开发

Go:什么决定了映射键的迭代顺序?

Go 编程语言规范 说: 3.未指定映射的迭代顺序.[...] 这是意料之中的,因为地图类型可以实现为哈希表、搜索树或其他一些数据结构.但是 map 是如何在 Go 中实际实现的呢? 换句话说,是什么决定了中键的迭代顺序 for k, _ := range m { fmt.Println(k) } 在我看到带有 string 键的地图显然 do 具有一定的迭代顺序后,我开始对 ..
发布时间:2022-01-08 14:37:54 其他开发

将 Matlab 转换为 Octave 是否有 container.Map 等价物?

我正在尝试将 Maia 包中的一些 matlab 代码转换成可以使用的东西与八度.我目前陷入困境,因为其中一个文件对 containers.Map 进行了多次调用,这显然是具有 尚未在 octave 中实现.有没有人有任何想法可以轻松实现类似的功能,而无需在 octave 中做大量额外的工作?感谢大家的宝贵时间. function [adj_direct contig_direct 重叠名称lo ..
发布时间:2022-01-08 14:37:44 其他开发

HashMap 中 NULL 键的哈希码

我只是在阅读 Java 中 HashMap 和 HashTable 类之间的区别.在那里我发现了一个区别,前者允许空键,而后者不允许相同的权限.就 HashMap 的工作而言,我知道,它在 key 上调用 hashcode 方法来查找要放置该键值对的存储桶.我的问题来了:如何计算空值的哈希码或空键的哈希码是否有任何默认值(如果有,请指定值)? 解决方案 from HashMap: pub ..
发布时间:2022-01-08 14:37:30 Java开发