1.Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)
集合框架相当于一个容器,为什么出现这么多的容器呢,因为每个容器对数据的存储方式都有。这个数据存储方式称为数据结构。
常见的Collection框架如下:
Collection
|-List <元素是有序的,元素可以重复的,因为该集合体系有索引>
| |-ArrayList(底层是数组数据结构,特点:查询速度快,但是增删稍慢。线程不同步
| |-LinkdeList(底层是链表数据结构,增删速度快,查询速度慢.在jdk1.6出现替代方法offerFist(),offerLast();peekFirst();peekLast();pollFist();pollLast();没有元素返回null
| |-Vector (底层是数组数据结构,被ArrayList替代了,枚举就是Vector特有的取出方式,相当于迭代器)
|-Set <元素是无序的,元素不可以重复,功能和Collection是一致的>
| |-HashSet (底层是数据结构是哈希表,该类使用散列表进行排序)||-TreeSet(可以对集set集合中的元素进行排)
以上是我个人的笔记,和毕老师视频的总结。
利用以上的理论知识,实现一个简单的集合应用:
package cn.itcast.web.tag;
import java.util.*;
public class Demo {
public static void main(String[] args) {
ArrayList al=new ArrayList();
al.add("C");
al.add("A");
al.add("E");
al.add("B");
al.add("F");
//使用iterator显示al中的内容
Iterator it=al.iterator();
System.out.print("al中的内容是:");
while(it.hasNext())
{
String s1=(String) it.next();
System.out.print(s1+" ");
}
//在Listiterator中修改内容
ListIterator lit= al.listIterator();
while(lit.hasNext()){
String s1=(String) lit.next();
//用set方法修改内容
lit.set(s1+"-");
}
System.out.println();
System.out.print("al修改后的内容:");
it= al.iterator();
while(it.hasNext()){
String s1=(String) it.next();
System.out.print(s1+" ");
}
System.out.println();
System.out.print("将列表反向输出:");
while(lit.hasPrevious()){
String s1=(String) lit.previous();
System.out.print(s1+" ");
}
}
}//得到结果:al中的内容是:C A E B F
al修改后的内容:C- A- E- B- F-
将列表反向输出:F- B- E- A- C-