最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談HashMap、HashTable的key和value是否可為null

 更新時(shí)間:2020年09月22日 11:17:46   作者:qingmengwuhen1  
這篇文章主要介紹了淺談HashMap、HashTable的key和value是否可為null,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

結(jié)論:

HashMap對(duì)象的key、value值均可為null。

HahTable對(duì)象的key、value值均不可為null。

且兩者的的key值均不能重復(fù),若添加key相同的鍵值對(duì),后面的value會(huì)自動(dòng)覆蓋前面的value,但不會(huì)報(bào)錯(cuò)。

public class Test {
 
 public static void main(String[] args) {
 Map<String, String> map = new HashMap<String, String>();//HashMap對(duì)象
 Map<String, String> tableMap = new Hashtable<String, String>();//HashTable對(duì)象
 
 map.put(null, null);
 System.out.println("hashMap的[key]和[value]均可以為null:" + map.get(null));
 
 try {
 tableMap.put(null, "3");
 System.out.println(tableMap.get(null));
 } catch (Exception e) {
 System.out.println("【ERROR】:hashTable的[key]不能為null");
 }
 
 try {
 tableMap.put("3", null);
 System.out.println(tableMap.get("3"));
 } catch (Exception e) {
 System.out.println("【ERROR】:hashTable的[value]不能為null");
 }
 } 
}

運(yùn)行結(jié)果:

hashMap的[key]和[value]均可以為null:null

【ERROR】:hashTable的[key]不能為null

【ERROR】:hashTable的[value]不能為null

補(bǔ)充知識(shí):hashmap判斷是否存在key時(shí),使用get(key)==null判斷還是containsKey?

java中hashmap(key,value)的key和value都可以是null

我們看hashmap中g(shù)et()和containskey()的方法:

public V get(Object key) {

Node

結(jié)論

如果java程序?qū)?key不存在和key存在但是存的值是null這兩種情況處理相同一視同仁,則可以直接使用

T t = map.get(key);
if(t==null){
//key不存在,或者存的值是null
}else{
//key存在
}

代替:

if(map.containskey(key)){
//key 存在
}else{
//不存在
}
T t = map.get(key);
if(t==null){
//存的值是null
}

如果java程序需要區(qū)分存的值是null和key不存在這兩種情況,則需要使用:

if(map.containskey(key)){
//key 存在
}else{
//不存在
}
T t = map.get(key);
if(t==null){
//存的值是null
}

以上這篇淺談HashMap、HashTable的key和value是否可為null就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)之內(nèi)存泄漏與溢出詳解

    Java基礎(chǔ)之內(nèi)存泄漏與溢出詳解

    今天帶大家來了解一下Java內(nèi)存泄漏與溢出的知識(shí),文中有非常詳細(xì)的介紹,對(duì)正在學(xué)習(xí)Java基礎(chǔ)的各位小伙伴呢很有幫助喲,需要的朋友可以參考下
    2021-05-05
  • 修改jvm-sandbox源碼導(dǎo)致線程安全分析

    修改jvm-sandbox源碼導(dǎo)致線程安全分析

    這篇文章主要為大家介紹了修改jvm-sandbox源碼導(dǎo)致線程安全分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • Linux centos7環(huán)境下jdk安裝教程

    Linux centos7環(huán)境下jdk安裝教程

    這篇文章主要為大家詳細(xì)介紹了Linux centos7環(huán)境下jdk的安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 使用自定義注解實(shí)現(xiàn)加解密及脫敏方式

    使用自定義注解實(shí)現(xiàn)加解密及脫敏方式

    這篇文章主要介紹了使用自定義注解實(shí)現(xiàn)加解密及脫敏方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 利用JavaFX工具構(gòu)建Reactive系統(tǒng)

    利用JavaFX工具構(gòu)建Reactive系統(tǒng)

    這篇文章主要介紹了使用JavaFX構(gòu)建Reactive系統(tǒng),利用JavaFX工具集中的新的超棒特性來構(gòu)建響應(yīng)式的快速應(yīng)用程序,感興趣的小伙伴們可以參考一下
    2016-02-02
  • java發(fā)送短信系列之同步、異步發(fā)送短信

    java發(fā)送短信系列之同步、異步發(fā)送短信

    這篇文章主要介紹了java發(fā)送短信系列之同步、異步發(fā)送短信的相關(guān)資料,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Java中Arraylist的最大長度

    Java中Arraylist的最大長度

    這篇文章主要介紹了Java中Arraylist的最大長度,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • dubbo 如何使用logback來輸出日志

    dubbo 如何使用logback來輸出日志

    這篇文章主要介紹了dubbo 如何使用logback來輸出日志的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java多線程同步工具類CyclicBarrier的使用

    Java多線程同步工具類CyclicBarrier的使用

    本文主要介紹了Java多線程同步工具類CyclicBarrier的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • SpringBoot使用自動(dòng)配置xxxAutoConfiguration

    SpringBoot使用自動(dòng)配置xxxAutoConfiguration

    這篇文章介紹了SpringBoot自動(dòng)配置xxxAutoConfiguration的使用方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12

最新評(píng)論

清苑县| 莒南县| 邻水| 肥乡县| 新蔡县| 祁连县| 乾安县| 平远县| 于田县| 清涧县| 玉龙| 永靖县| 界首市| 聊城市| 星子县| 广德县| 盘山县| 黔南| 江北区| 福安市| 鹿泉市| 梧州市| 连城县| 腾冲县| 沅陵县| 阿鲁科尔沁旗| 胶南市| 行唐县| 睢宁县| 寻乌县| 会东县| 阿瓦提县| 锡林郭勒盟| 固原市| 锡林郭勒盟| 汝阳县| 麻城市| 登封市| 巴东县| 顺昌县| 积石山|