国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

HashMap與Hashtable的區(qū)別

2019-11-14 11:21:42
字體:
供稿:網(wǎng)友

今天小錢給大家介紹一個(gè)重要的話題:HashMap與Hashtable的區(qū)別。再次強(qiáng)調(diào),我在此不僅要說它們的區(qū)別,更重要的是,這是一道非常重要的企業(yè)面試題,幾乎每期大、中小型軟件公司面試出現(xiàn)的頻率會(huì)占60%-70%左右,無論你選擇從事Android開發(fā)、javaEE開發(fā),還是大數(shù)據(jù),Java基礎(chǔ)都非常重要,出現(xiàn)此題的概率也非常高,所以必須掌握它....步入正題:為什么要把它倆放一起做對比呢?Hashtable是從JDK1.0版本開始,從Java2平臺v1.2就被改進(jìn)實(shí)現(xiàn)了Map接口,它和集合的Vector有些相似,因?yàn)閂ector也是從JDK1.0版本開始,但最終它被HashMap給替代了,接下來我們重點(diǎn)說它倆的區(qū)別是什么:它倆的區(qū)別:首先我們說它們的共同點(diǎn):底層都是哈希算法,都是雙列集合;區(qū)別是:1.HashMap是線程不安全的,線程不安全效率高,它是JDK1.2版本的;

   Hashtable是線程安全的,它的效率低,它是JDK1.0版本的;

2.HashMap可以存儲(chǔ)null鍵和null值;

   Hashtable不可以存儲(chǔ)null鍵和null值。

接下來我們來看下案例演示它倆的區(qū)別,貼上代碼:

package cn.edu.jit.map;import java.util.HashMap;import java.util.Hashtable;/** * HashMap和Hashtable的區(qū)別(很重要的面試題) * 它倆的區(qū)別:	首先我們說它們的共同點(diǎn):底層都是哈希算法,都是雙列集合;	區(qū)別是:	1.HashMap是線程不安全的,線程不安全效率高,它是JDK1.2版本的;      Hashtable是線程安全的,它的效率低,它是JDK1.0版本的;	2.HashMap可以存儲(chǔ)null鍵和null值;   	  Hashtable不可以存儲(chǔ)null鍵和null值。 * @author Rocky * */public class HashTableMapDemo {	public static void main(String[] args) {		HashMap<String, Integer> hm = new HashMap<String, Integer>();		hm.put(null, 23);		System.out.PRintln(hm);//{null=23}				hm.put("李四", null);		System.out.println(hm);//{null=23, 李四=null}						Hashtable<String, Integer> ht = new Hashtable<String, Integer>();		ht.put(null, 23);		System.out.println(ht);//報(bào)異常NullPointerException				ht.put("王五", null);		System.out.println(ht);//同樣也報(bào)異常NullPointerException			}}所以我們說HashMap可以存儲(chǔ)null鍵和null值,而Hashtable不可以存儲(chǔ)null鍵和null值。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 河池市| 汉阴县| 隆尧县| 诸城市| 巫山县| 石嘴山市| 博湖县| 旅游| 桐城市| 内乡县| 平和县| 惠来县| 大荔县| 霍邱县| 延边| 乌拉特后旗| 海原县| 出国| 新绛县| 乐亭县| 阿瓦提县| 界首市| 游戏| 建平县| 毕节市| 尼玛县| 阿拉善左旗| 正宁县| 宾川县| 贵南县| 乌兰县| 大足县| 固始县| 永嘉县| 德安县| 青铜峡市| 辛集市| 尤溪县| 冕宁县| 冕宁县| 宣恩县|