Java集合没有Map作为集合框架的一部分

时间:2012-08-24 07:27:46

标签: java collections map

如果查看collection framework,您会看到以下内容,但Map不在界面列表中。当我们谈论地图时,我们说它是集合框架的一部分,所以如果Map是集合框架的一部分,那么为什么它不在接口列表中。

 java.util
Interface Collection

All Known Subinterfaces:
    BeanContext, BeanContextServices, List, Set, SortedSet

All Known Implementing Classes:
    AbstractCollection, AbstractList, AbstractSet, ArrayList, BeanContextServicesSupport, BeanContextSupport, HashSet, LinkedHashSet, LinkedList, TreeSet, Vector 

5 个答案:

答案 0 :(得分:10)

“集合框架”和Collection界面不是一回事。

虽然可以将地图视为条目集合,但Map不直接支持 - 您可以使用entrySet方法获取一组条目。

但从根本上说,你需要区分“集合框架”和Collection接口。

答案 1 :(得分:6)

Mapskey/value pairs合作,other collectionsjust values合作。映射将键映射到值。它允许将其内容视为一组键,一组值和一组键值映射。

检查以下链接。通过oracle回答。 https://docs.oracle.com/javase/tutorial/collections/

答案 2 :(得分:3)

它是集合框架的一部分,但它没有实现java.util.Collection接口。

它是层次结构的不同分支。如果需要,可以在与Collection接口相同的层次结构级别上查看它。

Collection接口由类似List的集合(是其根)实现,而Map由类似KEY-VALUE的集合实现(是其根)。

答案 3 :(得分:2)

因为Map是三个集合:键,值和键值对。

要确定哪一个应该是默认迭代,这并不容易,因此它实现了三次接口(keySet()values()entrySet()

答案 4 :(得分:0)

Map接口不是Collection接口的扩展。但是,它是一种用于保存数据集合的结构。