Hashtable
package Day16;/*
@Author wanghongyuan
@Date 2020/12/25
*/
import java.util.HashMap;
import java.util.Hashtable;
/*
java.util.Hashtable<k,v>集合 implements Map<k,v>接口
Hashtable:底层也是一个哈希表,是一个线程安全的集合,是单线程集合,速度慢
HashMap:底层是一个哈希表,是一个线程不安全的集合,是多线程集合,速度快
HashMap集合:(之前学的所有的集合)可以存储null值,null键。
Hashtable集合,不能存储null值,null键。
Hashtable和Vector集合一样,在jdk1.2版本之后被更先进的集合取代了(ArrayList取代了Vector,HashMap取代了Hashtable)
Hashtable的子类Properties依然活跃在历史的舞台
Properties集合是一个唯一和IO流相结合的集合
*/
public class Demo02HashTable {
public static void main(String[] args) {
HashMap<String,String> map = new HashMap<>();
map.put(null,"a");
map.put("a",null);
map.put("b",null);
map.put(null,"a");
System.out.println(map);//{null=a, a=null, b=null}
Hashtable<String,String> map1 = new Hashtable<>();
// map1.put(null,"a");//NullPointerException
// map1.put("a",null);//NullPointerException
// map1.put("b",null);//NullPointerException
// map1.put(null,"a");//NullPointerException
System.out.println(map);
}
}