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

對比Java講解Kotlin中?.與!!.的區(qū)別

 更新時間:2018年06月15日 08:34:17   作者:憐憫是我的座右銘  
這篇文章主要給大家介紹了關(guān)于對比Java,實例講解Kotlin中?.與!!.的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用kotlin具有一定參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

本文主要介紹了關(guān)于Kotlin中?.與!!.的區(qū)別,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹吧

1、?.

//kotlin:
a?.foo()

//相當(dāng)于java:
if(a!=null){
 a.foo();
}

2、!!.

//kotlin:
a!!.foo()

//相當(dāng)于java: 
if(a!=null){
 a.foo();
}else{
 throw new KotlinNullPointException();
}

時間寶貴的同學(xué)可以不要看下面的了(` _ `)

3、再來說下"!!"

值得一提的是,當(dāng)我們直接調(diào)用一個可空變量的某方法或某成員變量時:

直接調(diào)用,報錯提示

Android Studio會提示在一個可空變量上,只有"安全調(diào)用"(safe call (?.))和"不為空的斷言調(diào)用"(non-null assert call(!!.))是被允許的,可以得知"!!"相當(dāng)于是斷言操作,即:

//(Kotlin)
a!!.foo()

//等于(Kotlin):
a!!
a.foo()

//相當(dāng)于(Java):
assert a!=null;
a.foo();

//也就相當(dāng)于(Java):
if(a == null){
 throw new NullPointException();
}
a.foo();

進(jìn)而有上面第2點結(jié)論。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • 基于Java中throw和throws的區(qū)別(詳解)

    基于Java中throw和throws的區(qū)別(詳解)

    下面小編就為大家?guī)硪黄贘ava中throw和throws的區(qū)別(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 如何在Spring中自定義scope的方法示例

    如何在Spring中自定義scope的方法示例

    這篇文章主要介紹了如何在Spring中自定義scope的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • 簡單了解java中int和Integer的區(qū)別

    簡單了解java中int和Integer的區(qū)別

    這篇文章主要介紹了簡單了解java中int和Integer的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • java中注解機制及其原理的詳解

    java中注解機制及其原理的詳解

    這篇文章主要介紹了java中注解機制及其原理的詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • Java如何實現(xiàn)長圖文生成的示例代碼

    Java如何實現(xiàn)長圖文生成的示例代碼

    這篇文章主要介紹了Java如何實現(xiàn)長圖文生成的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Java深入講解Object類常用方法的使用

    Java深入講解Object類常用方法的使用

    前面java繼承中說到的Object類是java中一個特殊的類,所有的類都是直接或者間接的繼承自O(shè)bject類,即如果某個類沒有使用extends關(guān)鍵字則默認(rèn)是java.lang.Object類的子類,所以所有的類都可以使用Object類中定義的方法,下面介紹Object類的常用方法
    2022-04-04
  • 解讀SpringBoot中addCorsMappings配置跨域與攔截器互斥問題的原因

    解讀SpringBoot中addCorsMappings配置跨域與攔截器互斥問題的原因

    這篇文章主要介紹了解讀SpringBoot中addCorsMappings配置跨域與攔截器互斥問題的原因,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 淺談Java鎖的膨脹過程以及一致性哈希對鎖膨脹的影響

    淺談Java鎖的膨脹過程以及一致性哈希對鎖膨脹的影響

    本文主要介紹了Java鎖的膨脹過程以及一致性哈希對鎖膨脹的影響,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • java原裝代碼完成pdf在線預(yù)覽和pdf打印及下載

    java原裝代碼完成pdf在線預(yù)覽和pdf打印及下載

    本文主要介紹了java原裝代碼完成pdf在線預(yù)覽和pdf打印及下載的方法,具有一定的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • Spring注解配置IOC,DI的方法詳解

    Spring注解配置IOC,DI的方法詳解

    這篇文章主要為大家介紹了vue組件通信的幾種方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論