獲取String
Key
包含一些String片段的HashMap
的最簡單方法是什麼?是真的,唯一的辦法是枚舉所有的鑰匙,並做substring()
?從包含字符串片段的HashMap獲取密鑰
這個僞代碼獲取確切的字符串,我需要只包含片段的字符串。
Map hm= new HashMap();
...
res = hm.get("blabla");
我需要使用Java 1.4中
獲取String
Key
包含一些String片段的HashMap
的最簡單方法是什麼?是真的,唯一的辦法是枚舉所有的鑰匙,並做substring()
?從包含字符串片段的HashMap獲取密鑰
這個僞代碼獲取確切的字符串,我需要只包含片段的字符串。
Map hm= new HashMap();
...
res = hm.get("blabla");
我需要使用Java 1.4中
是的,你必須循環上的所有鍵和搜索你想要的字符串。
HashMap.get將調用equals
,因此對於字符串,它們必須具有完全相同的內容。
您必須創建自定義數據結構或檢查每個關鍵個體。以下內容返回列表:
Set ref = hm.keySet();
Iterator it = ref.iterator();
List list = new ArrayList(); // list contaning the deired elements
while (it.hasNext()) {
Object o = it.next();
if(hm.get(o).contains(value)) {
list.add(o);
}
}
懷疑它會與java 1.4一起工作 – BigMike
對不起,沒看過那行,現在應該工作吧 –
A-B問題。更好地告訴你爲什麼需要它。 – AdamSkywalker
如果你可以使用通用集合,你可以嘗試http://tostring.me/287/partial-string-search-in-hashmap-key/,檢查這個其他問題http://stackoverflow.com/questions/6713239/partial-search-in-hashmap – BigMike