美文网首页
Swift3.x - 可选类型

Swift3.x - 可选类型

作者: ibabyblue | 来源:发表于2017-03-16 17:54 被阅读18次

可选类型介绍

  • 在OC开发中,如果一个变量暂时不使用,可以赋值为0(基本属性类型)或者赋值为空(对象类型)
  • 在Swift开发中nil也是一种特殊类型,因为和真实类型不匹配是不能赋值的(Swift是强类型语言)
  • 在开发中赋值nil在所难免,因此退出了可选类型
  • 可选类型的取值
    • 空值
    • 有值

可选类型的定义
1、基本写法

var flowerName: Optional<String> = nil

2、�语法糖(常用方式)

var flowerName: String? = nil

可选类型的赋值

var flowerName: String? = nil
flowerName = "violet"
//结果:violet 

可选类型的�取值
可选类型+!为强制解包,获取可选类型的值。
注意:强制解包时危险的操作,如果可选类型的值为nil,强制解包会导致系统crash!
强制解包前进行判断可选类型的值是否为nil,再解包取值。

var flowerName: String? = nil
//直接解包打印会crash
//print(flowerName!)
flowerName = "violet"
if flowerName != nil  {
    print(flowerName!)
}
//结果:violet

可选类型的可选绑定

  • 判断可选类型是否有值,如果没有值,则不执行{}内的语句。
  • 如果可选类型有值,则系统自动将flowerName解包,并将解包后的值赋值给新的常量flowerName。
    var flowerName: String? = nil
    flowerName = "violet"

    if flowerName != nil  {
        print(flowerName!)
    }
    //等价与上述方法
    if let flowerName = flowerName {
        print(flowerName)
    }

Zeb

相关文章

  • Swift3.x - 可选类型

    可选类型介绍 在OC开发中,如果一个变量暂时不使用,可以赋值为0(基本属性类型)或者赋值为空(对象类型) 在Swi...

  • Swift 可选项

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

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

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

  • swift语法--04可选类型

    swift语法--可选类型 可选类型 什么是可选类型: 一个变量可以有值也可以没有值, 我们就称之为可选类型 语法...

  • swift中的可选链

    可选链 可选项获取其属性,其属性本来不是可选类型,但也变成了可选类型。

  • Swift 可选类型Optional

    Swift 可选类型Optional [TOC] 前言 本将以Swift中的可选类型为入口,介绍: 可选类型的底层...

  • Swift 中的可选和拆包

    本文内容结构如下 可选操作以及可选类型 强制拆包 可选绑定 可选操作以及可选类型 var strValue:Str...

  • Swift:(五)可选类型

    Swift 可选(Optionals)类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选...

  • Swift:基础(五)可选类型

    Swift 可选(Optionals)类型 Swift 的可选(Optional)类型,用于处理值缺失的情况。可选...

  • Optional可选类型

    1、可选类型的声明 在声明常量或者变量时,在类型的后面加问号(?),即表示它是可选类型。声明可选变量格式如下(可选...

网友评论

      本文标题:Swift3.x - 可选类型

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