Swift nil 意思及 具體含義

在Swfit 中 對(duì)于 nil 的用法更為嚴(yán)謹(jǐn)了,與OC 中對(duì)于 nil 對(duì)象的用法隨意性形成了很大的區(qū)別,swift中也許一不小心就因?yàn)閷?duì)于 nil 對(duì)象操作導(dǎo)致crash崩潰,下面介紹了 在swift中nil 的一些基本知識(shí):

var str: String? = nil? // 代表空,無對(duì)象,

var str1: String? = ""? // 有對(duì)象,為空對(duì)象

NSString *str2 = nil

print(str.chracters.count)?? // 會(huì)Crash , 因?yàn)閟tr 無對(duì)象,而OC打印str2.length 不會(huì)Crash,輸出0

print(str.isEmpty()) // 會(huì)Crash , 因?yàn)閟tr 無對(duì)象,isEmpty這里判斷字符的個(gè)數(shù)

print(str1.isEmpry())? // 輸出 0

而OC str2.isEmpty() // 不會(huì)Crash

所有在Swift nil 與OC 里面的 nil 是有區(qū)別的, Swift 里面的nil 對(duì)象 不能對(duì)其作操作 只能判斷是否為 nil(例如str ==nil or str != nil)只有確定對(duì)象不為nil 的情況下 才能對(duì)對(duì)象進(jìn)行操作,否則則會(huì)crash。


PS: 有什么問題歡迎留言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 01-常量與變量 學(xué)習(xí)swift第一步打印Hello World print("Hello World") swi...
    iOS_恒仔閱讀 5,378評(píng)論 2 19
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile麗語閱讀 4,105評(píng)論 0 6
  • Swift 介紹 簡介 Swift 語言由蘋果公司在 2014 年推出,用來撰寫 OS X 和 iOS 應(yīng)用程序 ...
    大L君閱讀 3,436評(píng)論 3 25
  • swift基本使用 swift語句后面沒有分號(hào),不過就算不小心加了分號(hào)也不會(huì)報(bào)錯(cuò),但是為了語法的規(guī)范不能加分號(hào) 引...
    黃泉?dú)?/span>閱讀 506評(píng)論 0 0
  • 前言:1.此文中的語法會(huì)根據(jù)Swift的升級(jí)變動(dòng)而更新。2.如果需要請(qǐng)移步 -> swift2.2 語法(中)、...
    珍此良辰閱讀 542評(píng)論 0 5

友情鏈接更多精彩內(nèi)容