04-Swift逻辑分支

前端之家收集整理的这篇文章主要介绍了04-Swift逻辑分支前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

##逻辑分支

  • 一. 分支的介绍

    • 分支即if/switch/三目运算符等判断语句
    • 通过分支语句可以控制程序的执行流程
  • 二. if分支语句

    • 和OC中if语句有一定的区别
    • 判断句可以不加()
    • 在Swift的判断句中必须有明确的真假 不再有非0即真 必须有明确的Bool值 Bool有两个取值:false/true
  • 具体实例(代码为例)

  1. let a = 10
  2.  
  3. // 错误写法:
  4. //if a {
  5. // print("a")
  6. //}
  7.  
  8. // 正确写法
  9. if a > 1 {
  10. print(a)
  11. }
  12.  
  13. let score = 87
  14.  
  15. if score < 60 {
  16. print("不及格")
  17. } else if score <= 70 {
  18. print("及格")
  19. } else if score <= 80 {
  20. print("良好")
  21. } else if score <= 90 {
  22. print("优秀")
  23. } else {
  24. print("完美")
  25. }
  • 三. 目运算符

    • Swift 中的 三目 运算保持了和 OC 一致的风格 var a = 10 var b = 50 var result = a > b ? a : b println(result)
  • 四. guard的使用

    • guard是Swift2.0新增的语法

    • 它与if语句非常类似,它设计的目的是提高程序的可读性

    • guard语句必须带有else语句,它的语法如下: 当条件表达式为true时候跳过else语句中的内容,执行语句组内容 条件表达式为false时候执行else语句中的内容跳转语句一般是return、break、continue和throw

    • 一般形式

      1. guard 条件表达式 else {
      2. // 条换语句
      3. break
      4. }
      5. 语句组
    • 代码具体实例

  1. //三目运算符
  2.  
  3. let age = 20
  4.  
  5. let result = age > 10 ? "大于它" : "小于它"
  6. print(result)
  7.  
  8. //guard
  9. //OC 写法
  10. //func result(age : int) -> Bool {
  11. // if age >= 18 {
  12. // print("大于它")
  13. // return true
  14. // }
  15. // else{
  16. // print("小于它")
  17. // return true
  18. // }
  19. //}
  20. //Swift 写法
  21.  
  22. func result(age : Int) -> Bool {
  23. guard age >= 18 else {
  24. print("小于它")
  25. return false
  26. }
  27. print("大于它")
  28. return true
  29. }
  30.  
  31. result(30)
  • 五. switch分支

  • switch的介绍

  • Switch作为选择结构中必不可少的语句也被加入到了Swift中

  • 只要有过编程经验的人对Switch语句都不会感到陌生

  • 但苹果对Switch进行了大大的增强,使其拥有其他语言中没有的特性

  • switch的简单使用

  • 基本用法和OC用法一致 -不同之处: switch后可以不跟() case后可以不跟break(默认会有break)

  • 具体实例 (代码):

  1. let sex = 0
  2.  
  3. switch sex {
  4. case 0 :
  5. print("男")
  6. case 1 :
  7. print("女")
  8. default :
  9. print("其他")
  10. }
  • 简单使用补充: 一个case判断中,可以判断多个值 多个值以,隔开
    • 比如下面这个例子:
  1. let sex = 0
  2.  
  3. switch sex {
  4. case 0:
  5. fallthrough
  6. case 1:
  7. print("正常人")
  8. default:
  9. print("其他")
  10. }
  • 六. Switch支持多种数据类型
  • 浮点型的switch判断 let f = 3.14 switch f { case 3.14: print("π") default: print("not π") }
  • 支持字符串类型 字符串的使用后面会详细讲解
  1. let m = 5
  2. let n = 10
  3. var result = 0
  4.  
  5. let opration = "+"
  6.  
  7. switch opration {
  8. case "+":
  9. result = m + n
  10. case "-":
  11. result = m - n
  12. case "*":
  13. result = m * n
  14. case "/":
  15. result = m / n
  16. default:
  17. result = 0
  18. }
  19.  
  20. print(result)
  • 七. switch支持区间判断
  • 什么是区间? 通常我们指的是数字区间:0~10,100~200
  • swift中的区间常见有两种 开区间:0..<10 表示:0~9,不包括10 闭区间:0...10 表示:0~10
  1. let score = 88
  2.  
  3. switch score {
  4. case 0..<60:
  5. print("不及格")
  6. case 60..<80:
  7. print("几个")
  8. case 80..<90:
  9. print("良好")
  10. case 90..<100:
  11. print("优秀")
  12. default:
  13. print("满分")
  14. }

猜你在找的Swift相关文章