美文网首页
Swift 之控制流

Swift 之控制流

作者: freemanIT | 来源:发表于2016-11-16 21:13 被阅读0次

掌握

  • 基本的逻辑分支结构
  • 可选项的三种判断方式
  • ??,替换 nil 值,优先级低
  • if let,{} 内有效
  • guard let else, {} 后有效
  • swift 可以对任意类型的值进行分支

if

  • Swift 中没有 C 语言中的非零即真概念
  • 在逻辑判断时必须显示地指明具体的判断条件 true / false
  • if 语句条件的 ()可以省略但是 {} 不能省略
func demo1(num: Int) -> () { 
        if num > 10 { 
              print("大 \(num)") } 
        else { 
                print("小 \(num)") }
}

三目运算

  • ?? 是一个简单的三目运算
  • 如果有值,就是原来的值
  • 如果没有值,就用 ?? 后面的值代替
    一定要注意括号 '( )' 的使用

if let / var

        let oName: String? = "孙悟空"
        let oAge: Int? = 100
        
        //if let 连用,判断对象的值是否为 nil ,{}内有值,不需要解包
        //if var 连用,可在 {} 内对值进行修改
        if let name = oName,
            let age = oAge {
            //进入分支后, name 和 age 一定有值,不需要进行解包
            print(name + String(age))
            // name 和 age 的作用域只在 {}内
        }else{
            print("name 或 age 没有值")
        }

guard let

  • 正好和 if let 相反,是苹果在 Swift 2.0 之后推出的
  • 在程序编写时,条件检测之后的代码相对是比较复杂的
  • 使用 guard 的好处
  • 能够判断每一个值
  • 在真正的代码逻辑部分,省略了一层嵌套
        let oName: String? = "孙悟空"
        let oAge: Int? = 100
        
        guard let name = oName,
            let age = oAge else {
            print("name 或者 age 为nil")
        }
        print(name + String(age))

switch

  • switch不再局限于整数
  • switch可以针对任意数据类型进行判断
  • 不再需要 break
  • 每一个 case后面必须有可以执行的语句
  • 要保证处理所有可能的情况,不然编译器直接报错,不处理的条件可以放在 default分支中
  • 每一个 case中定义的变量仅在当前 case中有效,而 OC 中需要使用 {}
        let score = "优"
        
        switch score {
        case "优":
            let name = "学生"
            print(name + "80~100分")
        case "良": print("70~80分")
        case "中": print("60~70分")
        case "差": print("不及格")
        default: break
        }

相关文章

  • 9.控制流(theControlFlow)

    控制流 kotlin_控制流 swift控制流

  • Swift 之控制流

    掌握 基本的逻辑分支结构 可选项的三种判断方式 ??,替换 nil 值,优先级低 if let,{} 内有效 gu...

  • Swift基础之控制流

    Swift提供了多种流程控制结构,包括可以多次执行任务的while循环,基于特定条件选择执行不同代码分支的if、g...

  • Swift 基础之控制流

    Swift 提供了类似 C 语言的流程控制结构,包括可以多次执行任务的 for 和 while 循环,基于特定条件...

  • Swift教程之控制流

    控制流 Swift包含很多控制流语句:while循环、if、guard、switch和for-in循环。 For-...

  • Swift5.x-函数(中文文档)

    引言 继续学习Swift文档,从上一章节:控制流,我们学习了Swift控制流相关的内容,如for-in循环、whi...

  • Swift 控制流

  • Swift:控制流

    中文文档 一、For-In 循环 你可以使用 for-in 循环来遍历一个集合中的所有元素 使用 for-in 遍...

  • Swift控制流

    Swift控制流 for 循环 Swift中使用for-in的形式来进行for循环,类似于C语言的for条件递增的...

  • Swift -- 控制流

    控制流(Control Flow) Swift提供了多种流程控制结构,包括可以多次执行任务的while循环,基于特...

网友评论

      本文标题:Swift 之控制流

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