标签: hashmap

HashMap和Hashtable之间的区别?

Java中的a HashMap和a有什么区别Hashtable

哪个非线程应用程序更有效?

java collections hashtable hashmap

3604
推荐指数
32
解决办法
149万
查看次数

3244
推荐指数
7
解决办法
363万
查看次数

给定java hashmap中的键,如何更新值?

假设我们有一个HashMap<String, Integer>Java.

对于我找到的每个字符串的存在,如何更新(递增)字符串键的整数值?

人们可以移除并重新进入该对,但开销将是一个问题.
另一种方法是刚刚放置新的一对,旧的一对将被替换.

在后一种情况下,如果与我试图插入的新密钥存在哈希码冲突会发生什么?哈希表的正确行为是为其分配不同的位置,或者在当前存储桶中创建一个列表.

java key hashmap

585
推荐指数
12
解决办法
73万
查看次数

如何从Hash中删除一个键并获取Ruby/Rails中的剩余哈希?

要向Hash添加新对,我会:

{:a => 1, :b => 2}.merge!({:c => 3})   #=> {:a => 1, :b => 2, :c => 3}
Run Code Online (Sandbox Code Playgroud)

是否有类似的方法从哈希删除密钥?

这有效:

{:a => 1, :b => 2}.reject! { |k| k == :a }   #=> {:b => 2}
Run Code Online (Sandbox Code Playgroud)

但我希望有类似的东西:

{:a => 1, :b => 2}.delete!(:a)   #=> {:b => 2}
Run Code Online (Sandbox Code Playgroud)

重要的是返回值将是剩余的哈希值,因此我可以执行以下操作:

foo(my_hash.reject! { |k| k == my_key })
Run Code Online (Sandbox Code Playgroud)

在一条线上.

ruby ruby-on-rails hashmap ruby-on-rails-3 ruby-hash

531
推荐指数
12
解决办法
38万
查看次数

为什么ConcurrentHashMap没有ConcurrentHashSet

HashSet基于HashMap.

如果我们看一下HashSet<E>实现,一切都在管理之下HashMap<E,Object>.

<E>被用作关键词HashMap.

我们知道这HashMap不是线程安全的.这就是我们ConcurrentHashMap在Java中的原因.

基于此,我很困惑,为什么我们没有一个应该基于的ConcurrentHashSet ConcurrentHashMap

还有什么我想念的吗?我需要Set在多线程环境中使用.

另外,如果我想创建我自己的ConcurrentHashSet,我可以通过替换HashMapto来实现它,ConcurrentHashMap并将其余部分保留原样?

java collections concurrency hashmap hashset

496
推荐指数
8
解决办法
20万
查看次数

如何在HashMap中保留插入顺序?

我正在使用HashMap.当我遍历地图时,数据以(通常是相同的)随机顺序返回.但是数据是按特定顺序插入的,我需要保留插入顺序.我怎样才能做到这一点?

java hashmap

456
推荐指数
2
解决办法
33万
查看次数

Java Hashmap:如何从值获取密钥?

如果我的价值"foo",以及HashMap<String> ftw对于其ftw.containsValue("foo")返回true,我怎么能得到相应的钥匙?我是否必须遍历hashmap?最好的方法是什么?

java hashmap

429
推荐指数
15
解决办法
81万
查看次数

如何在Java中按键对Map值进行排序?

我有一个Map,它包含键和值的字符串.

数据如下:

"问题1","1"
"问题9","1"
"问题2","4"
"问题5","2"

我想根据其键对地图进行排序.所以,最后,我会question1, question2, question3......等等.


最终,我试图从这个Map中获取两个字符串.

  • 第一个字符串:问题(按顺序1.10)
  • 第二个字符串:答案(与问题的顺序相同)

现在我有以下内容:

Iterator it = paramMap.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry pairs = (Map.Entry) it.next();
    questionAnswers += pairs.getKey() + ",";
}
Run Code Online (Sandbox Code Playgroud)

这让我得到一个字符串中的问题,但他们不是有序的.

java dictionary hashmap

343
推荐指数
10
解决办法
54万
查看次数

Java中的HashMap和Map对象有什么区别?

我创建的以下地图之间的区别是什么(在另一个问题中,人们回答使用它们似乎是可互换的,我想知道它们是否/如何不同):

HashMap<String, Object> map = new HashMap<String, Object>();
Map<String, Object> map = new HashMap<String, Object>();
Run Code Online (Sandbox Code Playgroud)

java dictionary hashmap

333
推荐指数
8
解决办法
26万
查看次数

JavaScript Hashmap等效

正如在这个答案的更新3中所表明的那样,这种表示法:

var hash = {};
hash[X]
Run Code Online (Sandbox Code Playgroud)

实际上并不散列对象X; 它实际上只是转换X为一个字符串(通过.toString()它是一个对象,或者是各种基本类型的一些其他内置转换),然后在" hash"中查找该字符串,而不对其进行散列.也不检查对象相等性 - 如果两个不同的对象具有相同的字符串转换,它们将仅相互覆盖.

鉴于此 - 在JavaScript中是否有任何有效的哈希映射实现?(例如,第二个Google结果javascript hashmap产生一个实现,对于任何操作都是O(n).各种其他结果忽略了具有等效字符串表示的不同对象相互覆盖的事实.

javascript language-features hashmap data-structures

328
推荐指数
10
解决办法
56万
查看次数