java api 接口篇(二)上

豆豆网   技术应用频道   2006年11月23日  【字号: 收藏本文

本文详细介绍java api 接口篇(二)上

  Map接口  

  Map是一个将键映射为值的对象。一个映射不能包含重复键:每个键最多能映射一个值。Map接口如下所示:  

public interface Map {
// Basic Operations
Object put(Object key, Object value);
Object get(Object key);
Object remove(Object key);
boolean containsKey(Object key);
boolean containsValue(Object value);
int size();
boolean isEmpty(); 
 
// Bulk Operations
void putAll(Map t);
void clear(); 
 
// Collection Views
public Set keySet();
public Collection values();
public Set entrySet(); 
// Interface for entrySet element
public interface Entry {
Object getKey();
Object getValue();
Object setValue(Object value);
}
}
 

   JDK包含两个新的通用Map实现,一个是HashMap, 它将它的项存储在一个哈希表中,是一种最好的实现;另一个是TreeMap, 它将它的项存储在一个红-黑树上,它可保证迭代的顺序。 另外, Hashtable已被改进以实现Map。

  与哈希表的比较  

  如果你使用过Hashtable, 你应该已经熟悉了Map的一般风格(当然Map是一个接口,而Hashtable是一个具体的实现)。 以下是它们的主要区别:

  Map提供Collection视图,作为Enumeration对象的替代直接支持迭代过程。Collection视图 极大地提高了接口的可表达性,正如后续课程将讲到的。  

  Map允许你在键、值或键-值对上进行迭代;Hashtable则不提供第三个选项。  

  Map提供了在迭代过程中删除项的安全途径;Hashtable则不能。

责编:豆豆技术应用

正在加载评论...