美文网首页
Swift-可选类型

Swift-可选类型

作者: 捕梦少女的梦想 | 来源:发表于2018-09-04 16:34 被阅读0次

使用可选类型(optionals)来处理值可能缺失的情况。可选类型表示:

  • 有值,等于 x

或者

  • 没有值

可选的概念在C和Objective-C语言中是不存在。在Objective-C中最类似可选类型的功能是一个方法将返回nil或者一个对象,返回nil意味着“缺失一个有效的对象”。然而,这只适合于对象,不适合结构体,基本的数据类型,或者枚举值。对于这些类型情况,Objective-C中的方法会返回一个特殊值(例如NSNotFound)来表示缺失一个值。这类似于假定方法调用者知道该方法返回值有一个特殊的值需要检测。

一:基本写法:

        var name : Optional<String> = nil

二:语法糖:

        var name : String? = nil
        name = Optional("why")
        name = "why"

解包:

      name!强制解包取值非常危险,如果可选类型为nil,那么强制解包就会崩溃。

可选绑定:

该语法用于可选类型的取值,是我们使用起来可选类型更加方便。

        if let tempName = name {
            print(tempName)
        }
  • 判断name是否有值,如果没有值,则直接不执行{ }
  • 如果name有值,那么系统会自动对可选类型进行解包,并且将解包后的结果赋值给前面的tempName

nil

  • Swift的可选类型允许你不需要指定常量,可以为所有任何类型表示一个缺失值。
  • 只有可选类型才能赋值为nil,其他类型不能赋值为nil。
  • Swift中的nil与Objective-C中的ni不同,在Objective-C中,nil是指向一个不存在的对象的指针,而在Swift中,nil不是一个指针—它是代表一个确定类型的值的缺失。任何可选类型都可以被设置为nil,不仅仅是对象类型。

相关文章

  • Swift-可选类型

    使用可选类型(optionals)来处理值可能缺失的情况。可选类型表示: 有值,等于 x 或者 没有值 可选的概念...

  • Swift-可选类型

    在值可能不存在的情况下,您可以使用可选值。 可选表示两种可能性:有一个值,您可以解开可选值以访问该值,或者根本没有...

  • swift-可选类型

    使用!来获取一个不存在的可选值会导致运行时错误。使用 ! 来强制解析值之前,一定要确定可选包含一个非 nil的值。

  • Swift- 可选类型,隐式解析可选类型

    可选类型 声明变量或常量的时候,代表可以有值,也可以无值。在类型标注后面,用?表示当其没有值时可以赋值nil 如果...

  • Swift- 可选类型,隐式解析可选类型

    可选类型 声明变量或常量的时候,代表可以有值,也可以无值。在类型标注后面,用?表示当其没有值时可以赋值nil 如果...

  • Swift-进阶:可选类型Optional & Equatabl

    本文主要分析Optional源码、Equatable+Comparable协议 Optional分析 swift中...

  • Swift-进阶 10:可选类型Optional & Equat

    Swift 进阶之路 文章汇总[https://www.jianshu.com/p/5fbedf309237] 本...

  • Swift 可选项

    可选项,也叫做可选类型。定义为可选类型后,可以设置为 nil 在类型名后面加个问号?来定义可选类型 可选类型如果不...

  • Swift3.0基本语法(五)——封包和拆包

    一、可选类型(Optional) 相对OC而言,Swift增加一种可选类型(Optional),可选类型...

  • Swift-可选型

    可选型的声明 可选型的基本用法 可选型更多用法 隐式可选型的用例

网友评论

      本文标题:Swift-可选类型

      本文链接:https://www.haomeiwen.com/subject/katnwftx.html