2013-03-20 76 views
-2

我有以下代碼:爪哇 - 什麼替代傳統枚舉類

private Map<String, TestInterface> testList = new ConcurrentHashMap<String, testInterface>(); 

public Enumeration getTestObjects(){ 
    return testList.elements(); 
} 

用來使用哈希表的代碼,但我把它改成一個HashMap。

我的問題是,什麼是最有效的方式來實現在Java 7中的這個功能與散列表?返回一個列表?

+0

我應該使用.values()來返回一個集合嗎? – 2013-03-20 10:44:44

回答

2

地圖可以返回3個不同的類別:

  • keySet()(在你的例子Set<String>)返回一個包含所有鍵一組
  • values()(在你的例子Collection<TestInterface>)返回一個包含所有值的集合
  • entrySet()返回一個包含所有條目的集合(Set<Map.Entry<String, TestInterface>>在您的示例中)