hashmap相关内容

HashMap vs Switch 语句性能

HashMap 本质上具有 O(1) 性能,而开关状态可以具有 O(1) 或 O(log(n)),具体取决于编译器是使用表开关还是查找开关. 可以理解,如果 switch 语句是这样写的, switch (int) {情况1:案例2:案例3:案例4:默认:} 那么它将使用 tableswitch 并且显然比标准 HashMap 具有性能优势.但是如果 switch 语句是稀疏的呢?这将是 ..
发布时间:2022-01-08 14:24:08 Java开发

如果我将所有 [1, 2, 3, ..., n] 放入具有任何打乱顺序的 HashSet 并迭代 HashSet,为什么我会得到保证的排序顺序?

PS:这个 HashSet 是如何产生排序输出的?这篇文章没有回答我的问题.我知道如果我将任何数字放入哈希集中,我将不会得到排序. 但是,我发现如果我将所有 [1, 2, 3, ..., n] 放入一个 HashSet 任意打乱顺序 并迭代 HashSet,我将得到一个 保证排序顺序.我无法理解为什么它总是会发生.我已经测试了任何 n ..
发布时间:2022-01-08 14:24:01 Java开发

对 hashmap 键进行空检查

我有一个需要检查 null 的场景.我有一个名为 dT 的键: String dT = (String) caseChk.get("dT"); 这会引发 NullPointerException,因为该键本身不存在.如果我检查 if(caseChk.get("dT") != null) {//做一点事} 又一个 NullPointerException 因为 .get 而被抛出.当地图中的 ..
发布时间:2022-01-08 14:23:53 Java开发

Java HashMap 哈希函数

我正在通过 Java 的 HashMap hash() 实现,如下所示 final int hash(Object k) {//一些检查h ^= k.hashCode();//这个函数确保hashCodes的不同之处仅在于//每个位位置的常数倍数都有一个有界//碰撞次数(在默认负载因子下大约为 8).h^= (h>>>20) ^ (h>>>12);返回 h ^ (h >>> 7) ^ (h >> ..
发布时间:2022-01-08 14:23:46 Java开发

HashMap 中键的突变导致错误的结果

在我的项目中,我使用 HashMap 来存储一些数据,最近我发现当我改变 HashMap 的键时,可能会出现一些意想不到的错误结果.例如: HashMapa = 新哈希映射();ArrayList list1 = new ArrayList();a.put(list1, 1);System.out.println(a.containsKey(new ArrayList()));//真 ..
发布时间:2022-01-08 14:23:29 Java开发

使用 PHP 将 Hashmap 字符串转换为数组

我正在使用一个 API,它以以下格式将数据作为字符串返回: {"domain.com":{"status":"available","classkey":"domcno"}} 我想把这个结果放到一个多维的PHP数组中,但是由于输入的是一个字符串,我想不出一个方便的方法来转换它. 有没有可以根据需要自动将这些数据解析成数组的函数? 解决方案 那是JSON,够简单: $array ..
发布时间:2022-01-08 14:23:23 PHP

hash_map/unordered_map 中的项目顺序是否稳定?

是否保证当一个 hash_map/unordered_map 加载相同的项目时,它们在迭代时将具有相同的顺序?基本上我有一个从文件加载的哈希图,我会定期将有限数量的项目提供给例程,然后释放哈希图.消费完项目后,我将相同的文件重新加载到哈希图中,并希望在我上次停止的点之后获取下一批项目.我停止的点将由钥匙识别. 解决方案 从技术上讲,不保证它们按任何特定顺序排列. 然而,在实践中,鉴于 ..
发布时间:2022-01-08 14:23:12 C/C++开发

如何用 ObservableMap<KeyObject, ObservableList<CustomObject>> 填充 TableView在 JavaFX 中

我的 Java 程序产生了大量数据,我用这些数据构造了单独的 ResultObject.因为只有某些 ResultsObjects 会感兴趣,所以我用我的结果填充 ObservableHashMap.CustomObject 由几个整数 + 双精度和一个 JSONObject 组成.有了这个CustomObject,我想将类似的ResultObjects(具有某些共同属性)映射到那个CustomO ..
发布时间:2022-01-08 14:22:55 Java开发

为什么要在 HashMap 中为 getEntry 定义对象

我是泛型新手,我不确定我的问题的答案是 opinion based 还是有真正的原因.在下面的代码中,需要对对象条目的键进行大小写? 对象 k;if (e.hash == hash && ((k = e.key) == key || (key != null && key.equals(k)))) 它似乎很容易被替换为 if (e.hash == hash && (e.key == key ..
发布时间:2022-01-08 14:22:50 Java开发

映射<字符串、哈希集<字符串>>到 JSON,&漂亮的印刷品

我正在尝试使我的数据集与此示例相对应: var family = [{“名称":“杰森",“年龄":“24",“性别":“男性"},{“名称":“凯尔",“年龄":“21",“性别":“男性"}]; 我有一个 Map> 名称和与这些名称可以引用的特定实体相对应的唯一字母数字值,我们将这些条目称为“ID". 例如,Fyodor Mikhail ..
发布时间:2022-01-08 14:22:32 其他开发

无法编组可序列化数据的值

尝试将 HashMap 传递给我的 MainActivity 类时出现以下错误(TabooCards 实现了 Serializable).我在这里读到 HashMap 是可序列化的,并且 HashMap 中包含的任何对象也必须是可序列化的.我假设 Integer 是可序列化的,并且我知道 TabooCards 是可序列化的,所以出了什么问题? 代码: AsyncTask onPostE ..
发布时间:2022-01-08 14:22:04 Java开发

从 HashMap 中获取第一个元素

我有一个HashMap,需要获取第一个元素: type VarIdx = std::collections::HashMap;fn get_first_elem(idx: VarIdx) ->u16 {让它 = idx.iter();让 ret = 匹配 it.next() {一些(x)=>X,无=>-1,};ret}fn 主要(){} 但代码无法编译: error[E0308]: matc ..
发布时间:2022-01-08 14:21:56 其他开发

多线程环境下的Hashmap和hashtable

我对这两个集合在多线程环境中的行为感到非常困惑. 哈希表是同步的,这意味着不会有 2 个线程同时更新它的值,对吧? 解决方案 看ConcurrentHashMaps 用于线程安全映射. 它们提供了 HashTable 的所有功能,性能非常接近 HashMap. 通过不使用地图范围的锁来获得性能,该集合默认维护一个包含 16 个锁的列表,每个锁用于锁定地图的单个存储桶.您甚 ..
发布时间:2022-01-08 14:21:50 Java开发

Hashmap 以及它是如何在幕后工作的

快速提问以确保我理解 Java 中的 HashMap 的工作原理. 下面是代码示例: //String key = new String("key");//String val = new String("value");字符串键 = "键";字符串 val = "值";HashMap map = new HashMap();map.put(key, val);System.out.pri ..
发布时间:2022-01-08 14:21:40 Java开发

按已设置的顺序迭代 HashMap

我已经按特定顺序设置了 HashMap,但它以奇怪的顺序迭代! 请考虑以下代码: HashMapmap = new HashMap();map.put("ID", "1");map.put("姓名", "姓名");map.put("排序", "排序");map.put("类型", "类型");...对于(字符串键:map.keySet()){System.out.println(key + ..
发布时间:2022-01-08 14:21:31 Java开发

java性能:将hashMap值存储在变量中是多余的吗?

我的目标是减少内存使用.如果我需要多次使用该值,我应该将 hashMap 值存储在变量中吗? public void upcCheck() {字符串 prodUPC = pHashMap.get("productUpc");if(prodUpc == ''){//做东西;}否则如果(prodUpc == '0123456'){//做其他事情;}} 或者我应该总是使用 hashMap 的 get ..
发布时间:2022-01-08 14:21:25 Java开发