2015-04-04 76 views
-2

我已經在java中定義瞭如下所示的簇變量。如何獲取地圖值?

HashMap<double[],String> clusters = new HashMap<double[],String>(); 

我的問題是如何從羣集中逐一訪問字符串值?例如, String name =簇。「?」;

+2

可能重複http://stackoverflow.com/questions/46898/iterate-over-each-entry -in-a-map) – holgac 2015-04-04 10:54:09

+0

@holgac,通過對值的迭代找到一個問題。你提出的問題是關於條目的問題。 – Basilevs 2015-04-04 11:28:23

+1

可能的重複[如何獲取值。密鑰從HashMap?](http://stackoverflow.com/questions/16246821/how-to-get-values-keys-from-hashmap) – Joe 2015-04-04 11:37:52

回答

0

可以使用Map.values()迭代值:

for (String value : clusters.values()) { 
    // ... whatever. 
} 
[遍歷在地圖的每個條目(的
+0

這就是我想要的。非常感謝。 – user3553419 2015-04-04 11:08:23

3

由於數組的hashCode()可以爲具有相同內容的數組實例返回不同的值,因此在HashMap中使用數組作爲鍵是一個非常糟糕的主意。

+0

那麼如果我想使用相同的參數是什麼解決方案?並訪問字符串一個接一個? – user3553419 2015-04-04 10:57:26

+0

@skozlov這是真的,但我認爲它不一定與所描述的問題有關 - 無論哈希碼由於插入後更改而發生更改,仍可以使用「集羣」檢索所有值。值()'。 – 2015-04-04 10:58:24

+0

好的,http://stackoverflow.com/a/46908/1559111 – skozlov 2015-04-04 10:59:53