1、集合

     数组优点:方便查询,有下标。

     数组缺点:长度固定、类型不一致、不便于做添加删除。

ArrayList本质上就是一个Object类型的数组,既然是数组,优点:便于做元素的遍历。

                                                                            缺点:不便于做元素的添加和删除。

public  class ArrayList{

      private int size;

      private Object[] objemp = null;

      public ArrayList(){

             this(10);

      }

      public ArrayList(){}

      public int size(){

             return this.size;

      }

      public boolean isEmpty(){}

      public void clear(){}

      public void add(Object obj){}

}

2、LinkedList集合

     本质不是用数组实现,在linkedlist每个元素中,除了包含元素对象之外,还包含了一个指针,它指向了下一个元素的地址。

优点:便于做元素,添加和删除。

缺点:它没有下标,所以不便于做元素的遍历。

linkedlist具有的list.addFirst("xiaohong");

                     list.addLast("daxiong");

                     list.removeFirst();

                     list.removeLast();等等方法非常适合做堆栈结构(先进后出)的例子和队列结构(先进先出)的例子。

3、Vector

Vector与ArrayList本质上都是用object数组来实现的。区别在于Vector中所有的方法全部都是同步方法(synchronized)。

Vector是一种线程安全的集合。

4、HashMap

HashMap是以键值对的方式来存放数据。是通过hash算法,使用键来生成一个唯一的地址,然后将数据保存到这个地址中。因为地址是唯一的,所以HashMap具有一个特点,它的键是不能相同的,否则会覆盖前面的元素。

posted on 2013-01-17 15:31  Tiny339  阅读(153)  评论(0编辑  收藏  举报