引言:将一个字符串变量转化为数字类型,字符串内容必须为数字 输出的值被optional包裹起来,得到一个可选类型的值
1.可选类型
(1)声明可选类型,在类型声明后面加上问号
ex:var optionalNumber: Int? = 2
(2)可选类型不能进行类型推断,必须要进行类型标注
(3)可选类型的值要展开使用,既在值后加!
可选类型值得展开也叫强制解析
2.可选类型的展开
(1)当可选类型没有值时,是不能展开的
我们可以根据xcode提供的解决方案,提供一个默认值(defualt value),此时可选类型后面会出现符号??,叫做空合运算符,作用是:对可选类型进行判断。当可选类型的值为nil的时候,就会使用默认值;当可选类型有值的时候,他就会自动将可选类型的值展开并使用它。
第一个print输出为没有工作,第二个print输出为工程师
(2)隐式解析
在声明可选类型时,把?换成!(此时必须确保可选类型有值)
*if 语句配合可选类型的展开(确保隐式展开时可选变量是有值的)
var optionalInt: Int? = 3
if optionalInt != nil{
print(“可选类型optionalInt有值,值为(optionalInt!)”)
}
3.可选绑定
var optionalDouble:Double?= 2.5
if let double = optionalDouble{
print(“可选类型optionalDouble有值,值为(double)”)
}
(1)模拟用户注册的函数
第一返回密码未填写,第二返回注册成功
(2)guard语句的可选绑定(使程序更加简洁)
|
请发表评论