一 、JAVA集合概念

把具有相同性质的一类东西汇聚成一个整体,就可以称为集合。一般数据存储结构分为以下几种:

 (1)顺序存储:元素在内存中连续的存储在一起 如数组 这种存储方式有利于元素访问,但增删元素的效率很低。

 (2)链式存储:元素一般由 值DATA 和 NEXT 域构成,不需要连续的空间,每个元素通过一个指向下一个元素地址的     指针连在一起。

 (3)散列存储(Hash):元素值决定了对象在内存中的存储位置。换句话说 就是把元素值通过一种散列技术(hash)处理     出一个散列码,根据这个码觉得存储位置。

 (4)Map映射存储:与散列存储不同的是它每个元素都由关键字与值构成,也就是键值对存储。key不能重复,根据     key的值决定存储位置。

JAVA集合类存放于java.util包下,集合类型主要有三种:set(集) list(列表) map(映射)

二、 JAVA集合使用

(1)Hashset

可以把它想象成夜晚的星星一样,没有重复,没有先后顺序。

使用HashSet set = new HashSet();创建一个集合对象

set.add("a"); 向集合中添加一个元素。

set.remove("a")  删除一个元素。

遍历集合中的元素需要使用迭代器。

Iterator it = set.iterator();

while(it.hasNext())

{ 处理代码   }

   (2)TreeSet

它是一个有序的Set集合 会将元素按照默认的排序方式排序

   (3)ArrayList

它是一个动态数组,可以按照下标对元素操作 适合对元素进行访问,不适合增删元素

List list = new ArrayList(); 创建一个Arraylist

list.add("a");  添加一个元素

list.remove(0) 删除第一个元素

list.remove("a") 删除特定元素

   (4)LinkedList

它是一个双向链表,适合增删元素,不适合随机访问。

LinkedList list = new LinkedList(); 创建一个LinkedList

list.add("a"); 在尾部添加元素

list.addFirst("b"); 在头部添加元素

list.addLast("c") 在尾部添加元素

list.add(1,"d") 在第二个位置插入元素

list.getFirst() 读取头部元素 list.getLast(); 读取尾部元素

list.get(1) 读取第二个元素

list.removeFirst() 删除头部元素 list.removeLast() 删除尾部元素

     (5)HashMap

根据键值决定存储位置

HashMap map = new HashMap();

map.put("001","我是一个值"); 添加一个元素 001为Key

map.get("001") 返回对应的值

     (6)TreeMap

是有序的HashMap

TreeMap map = new TreeMap();

map.put("001","值");