<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          頭條三面:toString()、String.valueOf、(String)強(qiáng)轉(zhuǎn),有啥區(qū)別?

          共 1658字,需瀏覽 4分鐘

           ·

          2021-10-25 20:10

          作者 | 哪 吒

          來源 | https://blog.csdn.net/guorui_java/article/details/117935620

          一、前言

          相信大家在日常開發(fā)中這三種方法用到的應(yīng)該很多,尤其是前兩種,經(jīng)常在開發(fā)的時(shí)候,隨心所欲,想用哪個(gè)用哪個(gè),既然存在,那就應(yīng)該有它存在的道理,那么什么情況下用哪個(gè)呢?

          二、代碼實(shí)例

          1、基本類型

          (1)基本類型沒有toString()方法

          (2)推薦使用

          (3)無法強(qiáng)轉(zhuǎn)

          (String)是標(biāo)準(zhǔn)的類型轉(zhuǎn)換,將Object類型轉(zhuǎn)為String類型,使用(String)強(qiáng)轉(zhuǎn)時(shí),最好使用instanceof做一個(gè)類型檢查,以判斷是否可以進(jìn)行強(qiáng)轉(zhuǎn),否則容易拋出ClassCastException異常。需要注意的是編寫的時(shí)候,編譯器并不會(huì)提示有語法錯(cuò)誤,所以這個(gè)方法要謹(jǐn)慎的使用。

          如果您正在學(xué)習(xí)Spring Boot,推薦一個(gè)連載多年還在繼續(xù)更新的免費(fèi)教程:http://blog.didispace.com/spring-boot-learning-2x/

          instanceof判斷

          2、封裝類型

          (1)toString ok

          (2)String.valueOf()

          自然也是可以的。

          (3)封裝類型也無法強(qiáng)轉(zhuǎn)

          3、null值問題

          (1)toString()報(bào)空指針異常

          (2)String.valueOf()返回字符串“null”

          (3)null值強(qiáng)轉(zhuǎn)成功

          三、源碼分析

          1、toString()

          2、String.valueOf()

          String.valueOf()比toString多了一個(gè)非空判斷。

          四、總結(jié)

          1、toString(),可能會(huì)拋空指針異常

          在這種使用方法中,因?yàn)閖ava.lang.Object類里已有public方法.toString(),所以java對(duì)象都可以調(diào)用此方法。但在使用時(shí)要注意,必須保證object不是null值,否則將拋出NullPointerException異常。采用這種方法時(shí),通常派生類會(huì)覆蓋Object里的toString()方法。

          另外,如果您正在學(xué)習(xí)Spring Cloud,推薦一個(gè)連載多年還在繼續(xù)更新的免費(fèi)教程:https://blog.didispace.com/spring-cloud-learning/

          2、String.valueOf(),推薦使用,返回字符串“null”

          String.valueOf()方法是小編推薦使用的,因?yàn)樗粫?huì)出現(xiàn)空指針異常,而且是靜態(tài)的方法,直接通過String調(diào)用即可,只是有一點(diǎn)需要注意,就是上面提到的,如果為null,String.valueOf()返回結(jié)果是字符串“null”。而不是null。

          3、(String)強(qiáng)轉(zhuǎn),不推薦使用

          (String)是標(biāo)準(zhǔn)的類型轉(zhuǎn)換,將Object類型轉(zhuǎn)為String類型,使用(String)強(qiáng)轉(zhuǎn)時(shí),最好使用instanceof做一個(gè)類型檢查,以判斷是否可以進(jìn)行強(qiáng)轉(zhuǎn),否則容易拋出ClassCastException異常。需要注意的是編寫的時(shí)候,編譯器并不會(huì)提示有語法錯(cuò)誤,所以這個(gè)方法要謹(jǐn)慎的使用。



          往期推薦

          理工男有多香?一張桌子、一條視頻,股價(jià)狂漲13.51%!網(wǎng)友:我看到了喬布斯!

          JWT 和 JJWT,別再傻傻分不清了!

          Spring Boot + MyBatis + MySQL 實(shí)現(xiàn)讀寫分離!

          史上最全的Excel導(dǎo)入導(dǎo)出(easyexcel版)

          國(guó)產(chǎn)最強(qiáng)開源 API 數(shù)據(jù)庫(kù),沒有之一,不接受任何反駁!



          技術(shù)交流群

          最近有很多人問,有沒有讀者交流群,想知道怎么加入。加入方式很簡(jiǎn)單,有興趣的同學(xué),只需要點(diǎn)擊下方卡片,回復(fù)“加群,即可免費(fèi)加入我們的高質(zhì)量技術(shù)交流群!

          點(diǎn)擊閱讀原文,送你免費(fèi)Spring Boot教程!

          瀏覽 51
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  午夜真实日逼视频 | 色无码一区二区 | 91第一页 | 日韩少妇网 | 偷窥丶亚洲丶熟女 |