国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 全南县| 大竹县| 江陵县| 永济市| 固始县| 霍林郭勒市| 都兰县| 黑龙江省| 抚州市| 华亭县| 潮州市| 平凉市| 黄石市| 灌阳县| 杂多县| 营口市| 突泉县| 普兰店市| 大同市| 开江县| 新沂市| 冷水江市| 凤城市| 铅山县| 平阴县| 防城港市| 社旗县| 梁山县| 剑阁县| 科技| 页游| 昌黎县| 望江县| 通辽市| 上栗县| 当雄县| 行唐县| 崇礼县| 牙克石市| 兴义市| 武山县|