首先明確在Kotlin中的變量定義
定義變量規(guī)則:var | val 變量名 [:類型] [= 初始值]
例:var? name : String = "張三"
?????? val gender : String ="男"
通俗來講,var修飾變量,val修飾常量;
接下來先說?,并舉簡單的例子加以說明
1、?修飾申明在成員變量的類型后面,表示這個變量可以為null。該變量如果為null時,不會執(zhí)行該變量后面的邏輯,也不會拋出空指針異常,俗稱空安全。如果不為null,會正常執(zhí)行該變量后面的內(nèi)容。
舉例說明
(1)反例: 一個變量重新賦值后提示“Null can not be a value of a non--null type String”
正例:

(2)類中的成員變量

(3)有參傳遞時

2、!! 加在變量后面,表示該變量如果為null時,會拋出空指針異常,像java語法一樣空指針不安全;如果不為null,才會正常執(zhí)行該變量后面的內(nèi)容。??
舉例說明:
(1)反例:name未賦值,如下寫法會有空指針;
正例:
這樣就不會有空指針;
今天就記錄這么多,如有幫助,點個贊再走吧;謝謝啦;