Hashtable介绍
1. 继承自Dictionary;
2. 线程安全;
3. 支持Iterator和Enumeration;
4. key和value都不可为null;
5. 一般用于多线程环境中。
类定义
public class Hashtable
extends Dictionary
implements Map, Cloneable, Serializable
例子介绍
package com.dylan.collection;import java.util.Enumeration;
import java.util.Hashtable;/*** @author xusucheng* @create 2018-02-03**/
public class HashtableExample {public static void main(String[] args) {Enumeration names;String key;// Creating a HashtableHashtable hashtable =new Hashtable();// Adding Key and Value pairs to Hashtablehashtable.put("Key1","Chaitanya");hashtable.put("Key2","Ajeet");hashtable.put("Key3","Peter");hashtable.put("Key4","Ricky");hashtable.put("Key5","Mona");names = hashtable.keys();while(names.hasMoreElements()) {key = (String) names.nextElement();System.out.println("Key: " +key+ " & Value: " +hashtable.get(key));}}
}
使用Iterator迭代HashTable
package com.dylan.collection;import java.util.Hashtable;
import java.util.Iterator;
import java.util.Set;/*** @author xusucheng* @create 2018-02-03**/
public class IterateHashtable {public static void main(String[] args) {String str;// Creating a Hashtable instanceHashtable hashtable = new Hashtable();/* Adding key-value pairs to Hashtable* public V put(K key, V value): Maps the specified key to the* specified value in this hashtable. Neither the key nor the* value can be null. The value can be retrieved by calling the* get method with a key that is equal to the original key.*/hashtable.put("A", "Apple");hashtable.put("B", "Orange");hashtable.put("C", "Mango");hashtable.put("D", "Banana");hashtable.put("E", "Grapes");System.out.println("Hashtable contains:");/* public Set keySet(): Returns a Set view of the keys* contained in this map. The set is backed by the map,* so changes to the map are reflected in the set, and* vice-versa.*/Set keys = hashtable.keySet();//Obtaining iterator over set entriesIterator itr = keys.iterator();//Displaying Key and value pairswhile (itr.hasNext()) {// Getting Keystr = itr.next();/* public V get(Object key): Returns the value to which* the specified key is mapped, or null if this map* contains no mapping for the key.*/System.out.println("Key: "+str+" & Value: "+hashtable.get(str));}}
}