您所在的位置:主页 > JAVA技术 >

Map集合用于保存具有键值对结构特征的数据

时间:2014-10-14 17:19来源:未知 作者:疯狂java 点击:

Map集合用于保存具有键值对结构特征的数据

 Map集合用于保存具有键值对结构特征的数据,比如字符和对应的ASCII码,英文单词和对应的中文解释,银行卡号和对应的户主信息等。向Map集合添加元素时需要同时指定Key和Value,Key与Value构成

一组Entry,下例演示了Map集合的添加与遍历:

import java.util.HashMap;
import java.util.Map.Entry;

public class MapDemo {
public static void main(String[] args) {
HashMap<String, String> dict = new HashMap<String, String>();
dict.put("中国", "China");
dict.put("中国人", "Chinese");
dict.put("英国", "England");
dict.put("英语", "English");
for (Entry<String, String> entry : dict.entrySet()) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}


}
      Map不允许Key重复,最常用的方法为containsKey及get方法,其中get方法需要传入Key而不是下标,如果Map中不包含指定的Key,则返回null值。

      Map集合的常见实现类有HashMap,Hashtable,TreeMap等。其中HashMap与Hashtable区别在于后者为线程安全、前者不是,另外HashMap允许Key/Value为null值;两者都采用与HashSet类似的散列结构保存数据,所以要求Key覆盖hashCode和equals方法。TreeMap与TreeSet类似,使用排序树保存Key,所以要求Key实现Comparable接口。

注意:Map接口与List、Set接口没有交集,所以方法的定义和参数均不同。