1.集合的由来
通常,我们的程序需要根据程序运行时才知道创建多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只能放统一类型的数据,而且其长度是固定的,那怎么办呢?集合便应运而生了!
2.集合的特性
Java集合类存放在java.util包中,是一个用来存放对象的容器。
集合只能存放对象。比如你存入一个int型数据66放入集合中,其实它是自动转换成Integer类后存入的,Java中每一种基本数据类型都有对应的引用类型。集合存放的都是对象的引用,而非对象本身。所以我们称集合中的对象就是集合中对象的引用。对象本身还是放在堆内存中。集合可以存放不同类型,不限数量的数据类型。3.集合的分类
Java的集合类主要由三个接口派生而成,Collection、Map、Iterator。
Collection 接口子类型:List、Set 和 Queue。再下面是一些抽象类,最后是具体实现类。
实现类有 ArrayList 、 ConcurrentLinkedQueue 、EnumSet 、 HashSet 、LinkedHashSet 、 LinkedList 、 Stack 、TreeSet 、 Vector等。
Map接口子类型:ConcurrentMap、SortedMap等。
实现类有:AbstractMap 、 ConcurrentHashMap 、 HashMap 、 Hashtable 、 LinkedHashMap、TreeMap 等。
