上一讲介绍了集合中最为简单的ArrayList,实际上ArrayList属于List的子类,List属于collection的子类。故只要是collection中的方法,List和ArrayList都能使用。ArrayList在多线程中并不安全,因此我们在平时使用的时候,推荐使用List应用ArrayList方法:List list=new ArrayList();创建完集合之后,调用方法的形式与上一讲所述相同。
此外还有一种LinkedList,它的用法与ArrayList用法基本相同,区别就在于LinkedList多出以下几种方法:
addFirst(Object o)//将指定元素插入到当前集合的首部
addLast(Object o)//将集合插入当前集合的尾部
getFirst()//获得当前集合第一个元素
getLast()//获得当前集合最后一个元素
removeFirst()//移除并返回当前集合第一个元素
removeLast()//移除并返回当前集合最后一个元素
1、 Set接口概述
(1)Set接口是Collection接口的另外一个常用子接口,Set接口描述的是一种比较简单的集合。
(2)集合中的对象并不按特定的方式排序,并且不能保存重复的对象,也就是说Set接口可以存储一组唯一、无序的对象。
(3)Set接口常用的实现类有HashSet。
2、 使用HashSet类动态存储数据
(1)HashSet集合的特点如下:
-->集合内的元素是无序排列的。
-->HashSet类是非线程安全的。
-->允许集合元素值为null。
(2)HashSet的常用方法与上ArrayList的用法基本相同。
(3)List接口可以使用for循环、增强for循环、迭代器(Iterator接口)三种方式遍历。使用for循环遍历时,通过get()方法取出每个对象,但HashSet类不存在get()方法,所以Set接口无法使用普通for循环遍历。
(4)Set接口可以使用增强for循环、迭代器(Iterator接口)两种方式遍历。