欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決Map集合使用get方法返回null拋出空指針異常問題

 更新時間:2021年09月13日 16:31:56   作者:krisqiu  
這篇文章主要介紹了解決Map集合使用get方法返回null拋出空指針異常問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

前言

1.Map里面只能存放對象,不能存放基本類型,例如int,需要使用Integer

2.Map集合取出時,如果變量聲明了類型,會先進行拆箱,再進行轉(zhuǎn)換。

空指針問題

在這里插入圖片描述

如圖,在程序執(zhí)行到27行時,出現(xiàn)了空指針異常.按道理來講,對于Map集合是有Key和Value的,Collection集合是只有Value。如果執(zhí)行g(shù)et()方法,當不存在key時,對應(yīng)的應(yīng)該返回null。

map.get(s.charAt(i));

因此 由于不存在key“)”,應(yīng)該返回null

但是卻報了空指針異常。

原因

map.get(s.charAt(i));會先返回數(shù)據(jù)原本類型Character,當數(shù)據(jù)為null時,拆箱轉(zhuǎn)成null將拋出空指針異常。

以下同理

在這里插入圖片描述

進行if判斷時,map.get()方法會將取出的Character轉(zhuǎn)成表達式同類型的變量,由于是null 拆箱成char時將會拋異常。

map.get,小心get出一個空指針

map.get,get出來的可能是個空,拿著個參數(shù)做處理前一定要判斷,或者用getOrDefault

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot 自動配置原理及源碼解析

    SpringBoot 自動配置原理及源碼解析

    SpringBoot 在項目啟動的時候封裝了創(chuàng)建對象的方法,無需我們手動配置,接下來通過本文給大家介紹SpringBoot 自動配置原理解析及源碼展示,感興趣的朋友一起看看吧
    2021-06-06
  • SpringBoot實現(xiàn)熱部署Community的示例代碼

    SpringBoot實現(xiàn)熱部署Community的示例代碼

    本文主要介紹了SpringBoot實現(xiàn)熱部署Community的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • java的Array,List和byte[],String相互轉(zhuǎn)換的方法你了解嘛

    java的Array,List和byte[],String相互轉(zhuǎn)換的方法你了解嘛

    這篇文章主要為大家詳細介紹了java的Array,List和byte[],String相互轉(zhuǎn)換的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • 詳解Java如何利用數(shù)字描述更多的信息

    詳解Java如何利用數(shù)字描述更多的信息

    在數(shù)據(jù)庫里面?,通常我們會用數(shù)字的遞進來描述狀態(tài)等信息?,?但是如果想進行更復(fù)雜的操作?,?就有必要對二進制有一定理解了。本文就來趣味性的探討一下?,?如何通過更少的空間描述更多的信息
    2022-09-09
  • Quartz實現(xiàn)JAVA定時任務(wù)的動態(tài)配置的方法

    Quartz實現(xiàn)JAVA定時任務(wù)的動態(tài)配置的方法

    這篇文章主要介紹了Quartz實現(xiàn)JAVA定時任務(wù)的動態(tài)配置的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Mybatis-Plus?CRUD操作方法

    Mybatis-Plus?CRUD操作方法

    通用?Service?CRUD?封裝?IService?接口,進一步封裝?CRUD?采用?get?查詢、remove?刪除?、list?查詢集合、page?分頁的前綴命名方式區(qū)分?Mapper?層避免混淆,這篇文章主要介紹了Mybatis-Plus?CRUD的相關(guān)知識,需要的朋友可以參考下
    2023-10-10
  • 從零構(gòu)建可視化jar包部署平臺JarManage教程

    從零構(gòu)建可視化jar包部署平臺JarManage教程

    這篇文章主要為大家介紹了從零構(gòu)建可視化jar包部署平臺JarManage教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • java編程FinalReference與Finalizer原理示例詳解

    java編程FinalReference與Finalizer原理示例詳解

    這篇文章主要為大家介紹了java編程FinalReference與Finalizer的核心原理以及示例源碼的分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-01-01
  • Spring利用注解整合Mybatis的方法詳解

    Spring利用注解整合Mybatis的方法詳解

    這篇文章主要為大家介紹了Spring如何利用注解整合MyBatis,文中的示例代碼講解詳細,對我們學(xué)習(xí)有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • 詳解Netty編碼器和解碼器

    詳解Netty編碼器和解碼器

    很多小伙伴對Netty編解碼器這方面不是很了解,今天這篇文章給大家詳細介紹了Netty編碼器和解碼器的相關(guān)知識,需要的朋友可以參考下
    2021-06-06

最新評論