background image

1。添加
put(K key, V value)

2。删除

clear() 
remove(Object key) 

3。判断

containsKey(Object key)
containsValue(Object value) 

isEmpty() 

4。获取
get(Object key) 

size() 
values() 

entrySet() 

keySet() 

6.

 

说出

ArrayList,Vector, LinkedList 的存储性能和特性?【基础】

 

答:

ArrayList   

Vector:数组方式存储数据,索引数据快而插入数据慢

Vector 

 

由于使用了

synchronized 

 

方法(线程安全),通常性能上较

ArrayList 差

LinkedList 

 

使用双向链表实现存储,按序号索引数据需要进行前向或后向遍历 ,

但是插入数据时只需要记录本项的前后项即可,所以插入速度较快。

7.Collection   

Collections 的区别?【基础】

 

答:

Collection   

java.util 下的接口,它是各种集合的父接口,继承于它的

 

接口主要有

Set   

List   

Collections 

 

是个

java.util 下的类,是针对集合的帮助类,提供一系列静态方法实现对各种集合的搜索、

 

排序、线程安全化等操作 。

8.HashMap   

Hashtable 

 

的区别

? 【基础】

 

答:二者都实现了

Map 接口,是将惟一键映射到特定的值上;主要区别在于:

1)HashMap 

 

没有排序,允许一个

null 

 

键和多个

null   

,   

Hashtable 

 

不允许 ;

2)HashMap   

Hashtable   

contains 

 

方法去掉了,改成

containsvalue 和

containsKey, 

 

因为

contains 方法容易让人引起误解;

3)Hashtable 

 

继承自

Dictionary     

类 ,

HashMap   

Java1.2 

 

引进的

Map 

   

接口的实 现 ;

4)Hashtable 

 

的方法是

Synchronize 

 

的,而

HashMap 不是,在多个线程访问

Hashtable 

 

时,不需要自己为它的方法实现同步,而

HashMap 

 

就必须为之提供 外

同步。
Hashtable   

HashMap 

 

采用的

hash/rehash 

 

算法大致一样,所以性能不会有 很

大的差异。

9.Arraylist   

Vector 区别?【基础】

 

答:就

ArrayList   

Vector 主要从二方面来说:

 

)同步性:

Vector 

 

是线程安全的(同步),而

ArrayList 是线程序不安全的;

 

)数据增长:当需要增长时

,Vector 

 

默认增长一倍,而

ArrayList 却是一半。

10.List   

Map   

Set 三个接口,存取元素时,各有什么特点?【基础】

 

答:

List 

 

以特定次序来持有元素,可有重复元素。

Set 无法拥有重复元素,内部排序。

Map 

 

保存

key-value 值,value 可多值。

11.Set 

 

里的元素是不能重复的,那么用什么方法来区分重复与否呢

 

是用

== 还

 

equals()? 

 

它们有何区别

? 【基础】