Swift nil 意思及 具体含义

在Swfit 中 对于 nil 的用法更为严谨了,与OC 中对于 nil 对象的用法随意性形成了很大的区别,swift中也许一不小心就因为对于 nil 对象操作导致crash崩溃,下面介绍了 在swift中nil 的一些基本知识:

var str: String? = nil  // 代表空,无对象,

var str1: String? = ""  // 有对象,为空对象

NSString *str2 = nil

print(str.chracters.count)   // 会Crash , 因为str 无对象,而OC打印str2.length 不会Crash,输出0

print(str.isEmpty()) // 会Crash , 因为str 无对象,isEmpty这里判断字符的个数

print(str1.isEmpry())  // 输出 0

而OC str2.isEmpty() // 不会Crash

所有在Swift nil 与OC 里面的 nil 是有区别的, Swift 里面的nil 对象 不能对其作操作 只能判断是否为 nil(例如str ==nil or str != nil)只有确定对象不为nil 的情况下 才能对对象进行操作,否则则会crash。


PS: 有什么问题欢迎留言。

你可能感兴趣的:(Swift nil 意思及 具体含义)