if let用法简述
2016-11-28 16:09
281 查看
if let就是把Optional值直接给一个临时常量,Swift会自动检测Optional是否包含值,如果包含值,会隐式的拆包并给那个临时常量,在接下来的上下文中就能直接使用这个临时常量,这种方式称为可选绑定(optional binding)。如果想要在后面操作可选值,可以定义为if
var 变量名,这样可选类型包含的值就会赋值给一个变量。
如果把optionalName的值改成nil,并且加入else块
当可选值为nil的时候,if let语句块条件为false,大括号内的语句块跳过,直接执行后面else的语句块。
当可选值有值得时候,对可选值进行拆包,无需再使用!来获取值,然后赋值给常量name,并对大括号内的未拆包name进行拆包,使它的值可用。
总的来说,
if let 只是语法糖,没有也可以,但有了可以使得代码更简洁方便。
var 变量名,这样可选类型包含的值就会赋值给一个变量。
varoptionalName: String? = "John" vargreeting = "Hello" ifletname = optionalName { //name为可选量 greeting = "Hello, \(name)" } //"Hello, John" |
varoptionalName: String? = nil vargreeting = "Hello" ifletname = optionalName { //name为可选量 greeting = "Hello, \(name)" } else{ greeting = “Hello,Ben" } //“Hello,Ben" |
当可选值有值得时候,对可选值进行拆包,无需再使用!来获取值,然后赋值给常量name,并对大括号内的未拆包name进行拆包,使它的值可用。
总的来说,
if let 只是语法糖,没有也可以,但有了可以使得代码更简洁方便。
相关文章推荐
- ofstream和ifstream详细用法
- Winsock流程简述与函数用法说明
- fstream和ifstream详细用法
- MySQL IFNULL()函数用法
- if判断用法小结
- Shell编程中if的语法和常见判断用法
- ofstream 和ifstream的具体用法
- python中if __name__ == "__main__":用法解析
- __asm__ __volatile__内嵌汇编用法简述
- mysql中的if条件语句用法
- count_if用法
- 黑马程序员——分支语句if及switch的用法和注意事项
- s:if的用法
- C++ ofstream和ifstream详细用法
- ofstream和ifstream详细用法---转
- poll/epoll用法简述
- 简述html中框架Frame和Frameset的用法
- python中if __name__ == "__main__":用法解析
- 1.2shell逻辑判断、文件属性判断、if特殊用法、case判断
- fstream和ifstream详细用法,c++文件输入输出要注意!!