Java集合框架

Java中的集合类是一种工具类,类似与“容器”的概念;可以用来存储任意数量的具有共同属性的对象

Java集合框架_第1张图片

集合与数组的比较

Java集合框架_第2张图片

Java集合框架体系结构

Java集合框架_第3张图片
collection和map为Java集合类的根接口,蓝色箭头指向的分别为这些接口的相应的实现类


其中:

list为“序列”、queue为“队列”:这两者中的元素是有序、可重复的;

set为“集”:其中的元素是无序的、不可重复的;

Arraylist为“数组序列”、LinkedList为“链表”、HashSet为“哈希集”、HashMap为“哈希表”(map集合的实现类)

其中:collection中存储的是独立的对象,而map中存储的是映射关系的键值对(entry)

Java集合框架_第4张图片

List接口及其实现类

Java集合框架_第5张图片

ps:当一个对象存入集合时,都会变成object类型;所以在将其取出时,需要进行类型转换。

集合中的元素是某些对象,其实准确点说应该是对象的引用,这些引用指向特定的对象;

集合中的元素具有某种特定类型,当放入一个其他类型的元素进去时,系统不会报错,但是当将该元素取出时,会出现类型错误的异常;所以可以使用泛型< E >来规定该集合中可以添加的元素的类型,从而会对代码进行编译期间的检查,当尝试添加异常类型的元素,系统就会报错,编译不过去;

Java集合框架_第6张图片

泛型集合中,不能添加泛型规定的类型及其子类型以外的对象,否则会报错!

泛型集合中的限定类型:不能使用基本类型;但是可以通过使用包装类限定允许存入的基本数据类型;

Java集合框架_第7张图片

在集合遍历方法中,List可以使用foreach()方法和iterator()方法或者get()方法;而Set集合中元素是无序的,所以set集合的遍历方法只能使用前两个,不能使用get()方法;

Java集合框架_第8张图片
集合的遍历方法


set中,添加某个对象,无论添加多少次,最终只会保留一个该对象(的引用),并且,保留的是第一次添加的那一个

set中可以添加空对象null

Java集合框架_第9张图片
map接口性质
Java集合框架_第10张图片
映射关系
Java集合框架_第11张图片
映射关系是以entry类型的对象的实例的形式存在

key和value可以为任意类型的数据;

即entry类型(map的一个内部类)的对象实例包括key部分和value部分;

Java集合框架_第12张图片
Java集合框架_第13张图片

sort()方法中比较的元素必须继承comparable接口,否则不能对其进行排序;

Java集合框架_第14张图片
Java集合框架_第15张图片
Java集合框架_第16张图片
Java集合框架中的成员

你可能感兴趣的:(Java集合框架)