您的位置:首页 > 编程语言 > Java开发

Java笔记集合之Map

2015-10-26 15:05 337 查看

一、简介

将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。

此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。

Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如TreeMap 类;另一些映射实现则不保证顺序,如
HashMap 类。

二、方法摘要

 void
clear()


          从此映射中移除所有映射关系(可选操作)。
 boolean
containsKey(Object key)


          如果此映射包含指定键的映射关系,则返回 true。
 boolean
containsValue(Object value)


          如果此映射将一个或多个键映射到指定值,则返回 true。
 Set<Map.Entry<K,V>>
entrySet()


          返回此映射中包含的映射关系的
Set
视图。
 boolean
equals(Object o)


          比较指定的对象与此映射是否相等。
 V
get(Object key)


          返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回
null
 int
hashCode()


          返回此映射的哈希码值。
 boolean
isEmpty()


          如果此映射未包含键-值映射关系,则返回 true。
 Set<K>
keySet()


          返回此映射中包含的键的
Set
视图。
 V
put(K key,V value)


          将指定的值与此映射中的指定键关联(可选操作)。
 void
putAll(Map<? extendsK,? extends
V> m)


          从指定映射中将所有映射关系复制到此映射中(可选操作)。
 V
remove(Object key)


          如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
 int
size()


          返回此映射中的键-值映射关系数。
 Collection<V>
values()


          返回此映射中包含的值的
Collection
视图。

三、HashMap与HashTable

   HashMap

      HashTable

public class Hashtable extends Dictionary implements Map

public class HashMap  extends AbstractMap implements Map

并发下使用HashMap就=就要自己添加同步了Hashtable 中的方法是同步的
在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示 HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键,
而应该用containsKey()方法来判断。
Hashtable中,key和value都不允许出现null值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java