是否总是需要在HashMap中检查密钥是否存在?
我有一个说有1000个条目的HashMap,我正在考虑提高效率。如果HashMap的访问非常频繁,则每次访问时检查密钥是否存在将导致大量开销。相反,如果键不存在,因此发生异常,我可以捕获该异常。(当我知道这种情况很少发生时)。这将减少对HashMap的访问。
这可能不是一个好的编程习惯,但是它将帮助我减少访问次数。还是我在这里想念什么?
[ 更新 ]我在HashMap中没有空值。
您是否曾经存储过空值?如果没有,您可以执行以下操作:
Foo value = map.get(key);
if (value != null) {
...
} else {
// No such key
}
否则,如果返回空值,则 可以 检查是否存在:
Foo value = map.get(key);
if (value != null) {
...
} else {
// Key might be present...
if (map.containsKey(key)) {
// Okay, there's a key but the value is null
} else {
// Definitely no such key
}
}
我使用以下代码来检查实例中是否存在键: 我的问题是: 是否有实用工具或实现来简化上述代码,例如: 我的目标是:如果map中不存在,则map实现会抛出一个带有传递字符串的异常。 我不知道我的愿望是否合理? 对不起,如果我使用了错误的术语或语法,我还在学习英语。)
问题内容: 我陷入一种情况,我需要检查嵌套JSON对象中是否存在密钥。通过嵌套的JSON对象,我在父JSON对象中具有一个JSON对象作为其键之一的值。所以我需要检查此密钥是否存在于整个JSON对象中。我将以下数据作为对象。我知道我可以解析此对象以获得JSON对象。 我已经使用方法来检查主要JSON对象中密钥的存在,并且它可以工作。但是对于检查任何内部JSON对象(例如“ info”),我需要再次
我不熟悉shell脚本,我有一个用于导入cert和使用keytool导入keystore的脚本。此脚本位于Pod中,有时我必须重新启动Pod,有时当此脚本运行时,我会出现此错误 现有条目别名服务器存在,覆盖?[no]:输入新别名(返回以取消此条目的导入): 我知道有命令列出别名 它给出了输出 服务器,2022年6月22日,PrivateKeyEntry,证书指纹(SHA-256):AC:DC:12
问题内容: 我在Java中有一个Hashmap,如下所示: 然后我像这样填充它: 如何获得钥匙?类似于:返回“ United”。 问题答案: 一个包含多个键。您可以用来获取所有键的集合。 将存储与key 和key 。要遍历所有键: 将打印和。
问题内容: 我是NodeJS的新手,也许没有事件系统应该如何工作。找不到错误。请指教。我需要一个简单的任务- 检查标签,如果它不存在,则设置新密钥和有关该标签的信息。问题是-然后我第一次运行该脚本,它始终返回“键不存在”。检查redisdb键- 它会创建很多标签这是我的代码 这是另一个例子 输出: 看起来nodejs仅在该“设置”命令之后执行所有“获取”命令。所以…我了解,这全都归因于异步操作。但
所以,我从服务器上获得了一些JSON值,但我不知道是否会有一个特定的字段。 比如: 有时,会有一个额外的字段,如: 我想检查名为“club”的字段是否存在,这样在解析时我就不会得到 组织。json。JSONException:俱乐部没有价值