Swift2.0(8)分支循环
admin
2023-02-10 07:40:08
0
  • 分支语句

if语句的格式:

     if  条件 {}  else {}

     if  条件 {}  else if 条件 {}  else {}

     条件要求是一个Bool类型的值

     Swift要求{}中只有一条语句,{}也不能省略

switch语句的格式:

     switch 分支因子 {

     case 值1:

          响应1

     case 值2,

              值3:

               响应2和3

      ...

     default:

          其他处理

     }

     Swift中case语句不需要用break结尾

case可以支持:

     简单的字面值,如:

     var cardType = "大陆通行证"

     switch cardType {

     case "大陆通行证":

         print("请去1号柜台办理")

     case "台湾通行证":

         print("请去2号柜台办理")

     case "美国通行证","日本通行证":

         print("请去3号柜台办理")

     default:

         print("请去4号柜台办理")

     }

     元组,如:

     var stu = ("东大", 2014)

     switch stu {

     case ("东大", _):

         print("东北大学 2014")

     case ("沈师", _):

         print("沈阳师范大学 2013")

     case ("辽大", _):

         print("辽宁大学 2015")

     default:

         print("其他")

     }

     区间,如:

     var ascii:Int = 50

     switch ascii {

     case 48..<58:

         print("数字")

     case 65...90,97...122:

         print("字母")

     default:

         print("符号")

     }

     值绑定和条件值绑定,如:

     var pos = (110, 10)

     switch pos {

     case let (x, 20):

         print("坐标:(\(x),20)")

     case let (x, y) where x == y :

         print("坐标对角线:(\(x):\(y))")

     case let (x, y) where x<20 || x>100:

         print("不再中心位置:(\(x):\(y))")

     default:

         print("其他位置")

     }

     let (x, 20) 是“值绑定”

     let (x, y) where x ==y 是“条件绑定”

     “值绑定”还可以用于if语句


  • for循环

形式一:

     for 循环因子 in 集合 {}

     循环因子,不需要let和var这样的关键字

     集合包括:数组、字典、区间等

形式二:

     for 初始化因子; 条件; 自变运算 {}

     这里的因子必须是变量


  • while循环

形式一:

     while 条件 {}

形式二:

     do {} while 条件


  • continue

用法一:

     单独的continue

用法二:

     continue Label

     如:

     for1: for a in 1...5 {

         for2: for b in 1...10 {

             if a == b {

                 continue for1

             }

             print("a=\(a) b=\(b)")

         }

     }

  • break

用法一:

     单独使用break

用法二:

     break Label

     for1: for a in 1...5 {

         for2: for b in 1...10 {

             if 3*a == b {

                 break for1

             }

             print("a=\(a) b=\(b)")

         }

     }

用法三:

     switch的case中,作为空行占位

     var pos = (110, 10)

     switch pos {

     case let (x, 20):

         print("坐标:(\(x),20)")

     case let (x, y) where x == y :

         print("坐标对角线:(\(x):\(y))")

     case let (x, y) where x<20 || x>100:

         break

     default:

         break

     }

  • fallthrogh

     用于实现C语言中,case后面没有break的情况

     var pos = (110, 10)

     switch pos {

     case let (x, 20):

         print("坐标:(\(x),20)")

     case let (x, y) where x == y :

         print("坐标对角线:(\(x):\(y))")

     case let (x, y) where x<20 || x>100:

         print("不再中心位置:(\(x):\(y))")

         fallthrough

     default:

         print("其他位置")

     }


相关内容

热门资讯

【今日要闻】“甘孜娱乐中心.有... 您好:甘孜娱乐中心这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款...
【第一资讯】“牛魔王牛牛.开挂... 网上科普关于“牛魔王牛牛有没有挂”话题很是火热,小编也是针对牛魔王牛牛作*弊开挂的方法以及开挂对应的...
玩家最新攻略“全民比鸡.可以开... 网上科普关于“全民比鸡有没有挂”话题很是火热,小编也是针对全民比鸡作*弊开挂的方法以及开挂对应的知识...
我来教教您“白金岛字牌集.辅助... 您好:白金岛字牌集这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款...
【第一资讯】“海岛互娱.开挂神... 网上科普关于“海岛互娱有没有挂”话题很是火热,小编也是针对海岛互娱作*弊开挂的方法以及开挂对应的知识...
【第一财经】“沈阳老友麻将.到... 网上科普关于“沈阳老友麻将有没有挂”话题很是火热,小编也是针对沈阳老友麻将作*弊开挂的方法以及开挂对...
重磅消息“乐友棋牌.可以开挂吗... 网上科普关于“乐友棋牌有没有挂”话题很是火热,小编也是针对乐友棋牌作*弊开挂的方法以及开挂对应的知识...
重磅消息“经典联盟炸金花.怎么... 重磅消息“经典联盟炸金花.怎么装挂?”原来真的有挂您好,经典联盟炸金花这个游戏其实有挂的,确实是有挂...
玩家最新攻略“家乡大贰.怎么装... 有 亲,根据资深记者爆料家乡大贰是可以开挂的,确实有挂(咨询软件无需打开...
最新引进“微乐南昌麻将.辅助开... 您好:微乐南昌麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款...