美文网首页
09-Swift 空合运算符的使用

09-Swift 空合运算符的使用

作者: magic_pill | 来源:发表于2016-11-25 13:52 被阅读59次

一、空合运算符的使用:

  • 当一个可选类型的数据为 nil 时,就默认给它赋一个值,然后再进行运算;

  • “??” 为空合运算符;

  • 如果 “??” 前面的数据为 nil 时,就直接取 “??” 后面的值;

  • 如果 “??” 前面的数据不等于 nil,就将 “??” 前面的数据强制解包,并进行赋值;

  • 例1:“??” 前面的数据不等于 nil

var a:String? = "a"
let b = a ?? "abc"
b    //"a"
  • 例2:“??” 前面的数据等于 nil
var a:String? = "a"
a = nil
let b = a ?? "abc"
b    //"abc"
例1和例2为字符串类型对应的可选类型,例3和例4为整形类型对应的可选类型
  • 例3:“??” 前面的数据不等于 nil
var c:Int? = 123
let d = c ?? 10
d    //123
  • 例4:“??” 前面的数据等于 nil
var c:Int? = 123
c = nil
let d = c ?? 10
d    //10

二、如果没有空合运算符,则代码实现如下:

  • 第一种实现:if 结构
var aa:Int? = 2
//aa = nil
var bb = 0
if aa == nil {
    bb = 0
}else{
    bb = aa!
}
bb    //2
  • 第二种实现:三目运算符表达式
var aa:Int? = 2
aa = nil
var bb = 0
bb = aa == nil ? 0 : aa!
bb    //0

相关文章

  • 09-Swift 空合运算符的使用

    一、空合运算符的使用: 当一个可选类型的数据为 nil 时,就默认给它赋一个值,然后再进行运算; “??” 为空合...

  • Swift 学习碎片

    运算符 空合运算符(Nil Coalescing Operator)空合运算符 (a ?? b) 将对可选类型 a...

  • 空合运算符(Nil Coalescing Operator)、区

    空合运算符(Nil Coalescing Operator) 空合运算符(a ?? b)将对可选类型a进行空判断,...

  • Swift—空合运算符

    *空合运算符(Nil Coalescing Operator)* * 空合运算符(a ?? b)将对可选类型a进行...

  • Swift ??

    ?? 空合运算符空合运算符(a ?? b)将对可选类型 a 进行空判断,如果 a 包含一个值就进行解封,否则就返回...

  • Swift 3.0学习笔记_3_运算符

    基础运算符,空合运算符,区间运算符,逻辑运算符

  • swift基本运算符

    空合运算符空合运算符(a ?? b)将对可选类型 a 进行空判断,如果 a 包含一个值就进行解封,否则就返回一个默...

  • swift 空合运算符

    swift 空合运算符 空合运算符( ??)将对可选类型 进行空判断,如果包含一个值就进行解封,否则就返回一个默认...

  • Swift 3.0 学习(一)(持续更新)

    英语好的可以阅读官方文档 链接 附上本人学习 Swift3.0 资源网站 链接 空合运算符(??) 空合运算符(a...

  • Swift基础2

    空合运算符 1.空合运算符(a??b)将对可选类型a进行空判断,如果a包含一个值就进行解封,否则就返回默认值b。 ...

网友评论

      本文标题:09-Swift 空合运算符的使用

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