集合:collection
子接口:List Set
List特征:维护有序的,可重复的集合。
List的实现类:ArrayList LinkedList Vector
ArrayList底层是一个可扩容的数组,拥有下标(索引),从零开始。
LinkedList底层是:双向链表,插入删除速度快,检索速度慢。
Vector 是一个线程安全的集合。
List的实现类中:存储的是引用数据类型
子接口:Set
Set特征:维护着无序的,不可重复的集合。
Set.clear清楚所有元素
Set.clone浅表副本
Set.contains是否包含某个元素
Set.isEmpty 集合是否为空
Set.iterator迭代器
Iterator<String> …=set.iterator()
While(….hanNext()){
System.out.println(….next());
}
Set.remove删除某个元素
set存储元素使用的事散列表储存。当散列表存在已有对象,首先判断hashCode是否相同,如果不同,直接存入。如果相同在判断equals方法,如果equals方法为false则存入,如果为true,则不存入
linkedHashSet使用散列表存储元素,在元素中添加了双向链表,从而能对记录对象 的前后顺序。
TreeSet维护着可进行排序的元素的集合。
本文介绍了Java集合框架中的List和Set接口,以及ArrayList、LinkedList、Vector等实现类的特性。ArrayList基于可扩容数组,适合随机访问;LinkedList是双向链表,适合插入删除操作。Set接口保证元素唯一性,其中HashSet使用散列表存储,TreeSet则维护排序顺序。LinkedHashSet在HashSet基础上增加了元素插入顺序的保持。
1154





