Swift 5.0 (二) 可选类型 、函数

可选类型

nil是一个特殊的类型了和真实类型不匹配是不能赋值nil的 但开发中需要赋值nil,因此出可选类型
//常规 不常用
var name :Optional = nil
//语法糖
var name : String? = nil
//赋值
name = “a”
//取出可选类型中的值
print(name as Any)
//强制解包 危险操作 如果可选类型为nil 会崩
print(name!)
//建议强制解包前判断是否为nil
if name != nil {
print(name!)
}

//可选绑定 每次用到name都需要先解包
if let tempName = name { // 1.判断name是否有值 2.如果name有值 系统自动将name解包并赋值给tempName
print(tempName)
}

//常用写法 就近原则
if let name = name {
print(name)
}

//例子 通过字符串创建url
//let url : NSURL = NSURL(string: “www.xxx.com”) //报错 因为后面返回的事可选类型 并不是nsurl 当然你可以不指定类型
let url = NSURL(string: “www.xxx.com奥术大师”);
//let url : NSURL? = NSURL(string: “www.xxx.com”)
//let request : NSURLRequest? = NSURLRequest(url: url! as URL) //非常危险 ,强制解包 当网址有中文的时候 nil 就会崩
if let url = u

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值