重温Java基础知识

1.list.map.set的存储特点? 

(1)List 以特定次序来持有元素,可有重复元素. 
(2)Set 无法拥有重复元素,内部排序. 
(3)Map 保存key-value值,value可多值
2.arraylist和vector的区别? 
(1).同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程不安全的,不是同步的
(2).数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
3.ArrayList,Vector, LinkedList的存储性能和特性? 

1)ArrayList 采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,所以最大的缺点就是
插入删除时非常麻烦
LinkedList 采用的将对象存放在独立的空间中,而且在每个空间中还保存下一个链接的索引但是缺点就是查找非常麻烦 要丛第一个索引开始 

2)ArrayList和Vector都是用数组方式存储数据,此数组元素数要大于实际的存储空间以便进行元素增加
和插入操作,他们都允许直接用序号索引元素,
但是插入数据元素涉及到元素移动等内存操作,所以索引数据快而插入数据慢.
3). Vector使用了sychronized方法(线程安全),所以在性能上比ArrayList要差些. 
4). LinkedList使用双向链表方式存储数据,按序号索引数据需要前向或后向遍历数据,所以索引数据慢,是
插入数据时只需要记录前后项即可,
所以插入的速度快. 

 4.HASHMAP,HASHTABLE区别 
1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;
2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。
3.在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。

5. Collections,collection的区别 

Collection是个java.util下的接口,它是各种集合结构的父接口。Collections是个java.util下的普通类,它包含有各种有关集合操作的静态方法。Collections是针对集合类的一个帮助类,它提供一系列的静态方法实现对各种集合的搜索,排序,线程安全化等操作。

6.

猜你喜欢

转载自ronbay.iteye.com/blog/2300996