今天遇到一个问题
Map是集合吗?
我们看下面这个图(来自菜鸟教程)
上图标题很明显”Java集合框架图“
从中我们可以看到有Map的存在,那么平常我们说的集合包括Map吗?
我们平常说的集合都是指Collection下的Set,List。而Map是否真如上图表示的一样,是集合呢??
在《java编程思想》中有一下描述:
Java使用类库还提供了一套相当完整的容器类来解决这个问题,其中基本的类型是List、Set,Queue和Map。这些对象也称为集合类,但是由于Java类库中使用了Collection这个名字来指代该类库的一个子集,所以我是用了更广泛的术语”容器“来称呼他们。
而在《Java核心技术卷》一书中也把Map算作集合类的跟接口之一。
书不是绝对的,要看你怎么理解
书籍可以很好的指导你,但是自己在学习的过程中也有自己的思考。
总的来说,容器是为了解决在Java中无法确定保存对象个数或者是否需要更复杂的方式来存储对象的问题,而我们常说的Collection实现类与Map都能使用不同大方式来解决这个问题,所以对于Map是否是集合并不是很重要,重要的是要明白使用的方法和使用的目的。