java 知识点梳理

1.ArrayList与linkedList 区别
  ArrayList 采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,所以最大的缺点就是插入删除时非常麻烦; 优点是查找比较快。
  LinkedList 采用的是链表的形式来保存对象的,将对象存放在独立的空间中,而且在每个空间中还保存下一个链接的索引
但是缺点就是查找非常麻烦 要丛第一个索引开始.
2.ArrayList与Vector的区别
  ArrayList与Vector实现都是数组,(1)同步性 Vector是线程安全的,也就是说他的方法之间是线程同步的,
(2)ArrayList 是线程不安全的,它的方法之间是线程不同步的。
如果只有一个线程会访问到集合,那最好是使用ArrayList,因为它不考虑线程安全,效率会高些;
如果有多个线程会访问到集合,那最好是使用Vector,因为不需要我们自己再去考虑和编写线程安全的代码。
3.HashMap与Hashtable 的区别
HashMap是线程不安全的,Hashtable是线程安全的。
Hashtable 相对于HashMap更早提出,应用也非常广泛,HashMap后来提出是为了代替Hashtable的类,也就是说建议使用HashMap,不要使用
Hashtable。
Hashtable不允许null值(key和value都不可以),HashMap允许null值(key 和value都可以)

posted @ 2016-03-07 20:39  流星小子  阅读(131)  评论(0编辑  收藏  举报