Vector 与 Hashtable 与 Stack

Vector:
  用ArrayList代替Vector。Vector是线程安全的,而有的时候我们确实希望在多线程的情况下使用列表,那么这个时候我们可以利用Collections这个类当中为我们提供的synchronizedList(List list),它可以返回一个线程安全的同步的列表,还提供了返回同步的Collections。

 

Hashtable:
  用HashMap代替Hashtable。Hashtable是线程安全的,而有的时候我们确实希望在多线程的情况下使用HashMap,那么这个时候我们可以利用Collections这个类当中为我们提供的synchronizedMap(Map<K,V> m),它可以返回一个线程安全的同步的HashMap

Stack:
  用LinkedList代替Stack。当初在设计Stack的时候就有一些潜在的问题,它是从Vector继承而来,对于一个栈来说,它只能是最后放进去的元素,要先出来,但是它继承自Vector,而Vector中有一个方法叫做elementAt(int index),而不能说是通过这个索引index去任意的获得一个元素。结果它就有了这个奇怪的特性,提倡应该自己利用LinkedList去实现一个stack。

posted @ 2010-12-23 12:04  meng72ndsc  阅读(823)  评论(0编辑  收藏  举报