数据结构(Data structure)是以某种形式将数据组织在一起的集合。数据结构不仅存储数据,还支持那些访问和处理数据的操作。
Java集合框架支持一下两种类型的容器:
一:一种是为了存储一个元素的集合,简称集合(collection):
规则集(Set):存储不重复的元素
HashSet:其中的元素没有被插入hashset的顺序存储
LinkedHashSet:按照元素插入的顺序提取
TreeSet:可以对元素排序。每次添加对象都会排序依次,所以直接使用new TreeSet( Collection c)较好
线性表(List):存储一个由元素构成的有序集合(不仅可以储存重复的元素,而且允许用户指定他们存储的位置)
ArrayList:用数组存储元素,这个数组是动态的,如果元素个数超过了数组的容量,就建一个更大的数组,将当前的数组中的所有元素复制到新数组中
LiskedList:在一个链表中存储元素.
两者最主要的不同体现在背部实现上,内部实现会影响到他们的性能。若要提取元素或在线性表的尾部插入和删除元素,ArrayLisy的效率比较高。若要在线性表的任意位子上插入和删除元素,LinkedList的效率会高一些。
线性表和集合的静态方法:
队列(Queue):存储用于先进先出方式处理的对象
队列 Queue
优先队列 PriporityQueue
二:另外一种是为了存储键/值对,称为图(map)