1,HashMap和Hashtable的区别
-
Hashtable是JDK1.0版本出现的,是线程安全的,效率低,HashMap是JDK1.2版本出现的,是线程不安全的,效率高
-
Hashtable不可以存储null键和null值,HashMap可以存储null键和null值
-
共同特点:底层都是Hash算法。
import java.util.HashMap;
import java.util.Hashtable;
public class Demo9_Hashtable {
/**
* @param args
* 面试题
* HashMap和Hashtable的区别
* 共同点:
* 底层都是哈希算法,都是双列集合
* 区别:
* 1,HashMap是线程不安全的,效率高,JDK1.2版本
* Hashtable是线程安全的,效率低,JDK1.0版本的
* 2,HashMap可以存储null键和null值
* Hashtable不可以存储null键和null值
*/
public static void main(String[] args) {
HashMap<String, Integer> hm = new HashMap<>();
hm.put(null, 23);
hm.put("李四", null);
System.out.println(hm);
/*Hashtable<String, Integer> ht = new Hashtable<>();
//ht.put(null, 23);
ht.put("张三", null);
System.out.println(ht);*/
System.out.println("1111111111111");
}
}

本文详细比较了HashMap和Hashtable在Java中的使用差异,包括线程安全性、效率、空键值支持等方面,阐述了它们的底层实现原理及适用场景。
&spm=1001.2101.3001.5002&articleId=94551594&d=1&t=3&u=3adb8e1c98994242a1ecef76606c90a6)
1671

被折叠的 条评论
为什么被折叠?



