Swift流程控制语句
发布时间:2020-12-14 02:04:56 所属栏目:百科 来源:网络整理
导读://// main.swift// Swift流程控制语句//// Created by Goddog on 15/6/24.// Copyright (c) 2015年 Goddog. All rights reserved.//import Foundation//MARK: - 顺序结构//MARK: - 分支结构//MARK: - -if条件语句//注意一定要优先处理范围小的情况 ,下面得
// // main.swift // Swift流程控制语句 // // Created by Goddog on 15/6/24. // Copyright (c) 2015年 Goddog. All rights reserved. // import Foundation //MARK: - 顺序结构 //MARK: - 分支结构 //MARK: - -if条件语句 //注意一定要优先处理范围小的情况 ,下面得到“中年人” var age = 45 if age > 60 { println("老年人") } else if age > 40 { println("中年人") } else if age > 20 { println("青年人") } //MARK: - -switch分支语句 /** 1.任意一个case可以紧跟多个值,2.任意一个case执行完成之后会终止无需break语句,3.每一个case必须包含一条语句 4.用fallthrough惯穿,即继续往下走,5.也可以用break立刻结束 */ var score = "c" switch score { case "A","a": println("优秀") case "B","b": println("良好") case "C","c": println("中等") case "D","d": println("及格") case "F","f": println("重考") default: println("输入有误") } //switch的范围匹配 var myscore = 98 switch myscore { case 90...100: println("优秀") case 80...89: println("良好") case 70...79: println("中等") case 60...69: println("及格") case 0...60: println("不及格") default: break } //switch的元组匹配 //其中_是代表匹配所有可能的值 var somePoint = (x:1,y:-4) //代表第四象限 switch somePoint { case (0,0): println("(0,0)位于原点") case(_,0): println("((somePoint.0),0)位于x轴上") case(0,_): println("0,(somePoint.1)位于y轴上") case(0...Int.max,0...Int.max): println("(somePoint.0),(somePoint.1) 位于第一象限") case(Int.min..<0,(somePoint.1) 位于第二象限") case(Int.min..<0,Int.min..<0): println("(somePoint.0),(somePoint.1) 位于第三象限") case(0...Int.max,(somePoint.1) 位于第四象限") default: break } //注意:范围越小的case块应该放在最前面 //case的值绑定:switch表达式的值绑定到临时的变量或常量,无需default结束了 var hisScore = 404 switch hisScore { case 91...100: println("优秀") case 80...89: println("良好") case 70...79: println("一般") case 60...69: println("及格") case 0..<60: println("挂科") case let scor: println("输入的(scor)有误") } var somesPoint = (x : 1,y : 0) switch somesPoint { case (0,0): println("(0,0)位于原点") case (var x,0): println("位于x轴上的(x)") case(0,var y): println("位于y轴上的(y)") case(var x,var y): println("位于其他点(x),(y)") } //case的where子句 var somesPionts = (x : -1,y : 4) switch somesPionts { case (0,0)位于原点") case (var x,0): println("该点位于x轴上,其x值是:(x)") case (0,var y): println("该点位于y轴上,其y值是:(y)") case var (x,y) where x>0 && y>0: println("(x),(y)点位于第一象限") case var (x,y) where x<0 && y>0: println("(x),(y)位于第二象限") case var (x,y) where x<0 && y<0: println("(x),(y)位于第三象限") case var (x,y) where x>0 && y<0: println("(x),(y)位于第四象限") default: break } //MARK: -循环结构 //1.while循环 var count = 0 while count < 10 { println("count值是:(count)") count++; } println("循环完成") //2.do..while循环 var counts = 1 do { println("counts的值是:(counts)") counts++ } while counts < 10 //for循环 for var count=0; count<10;count++ { println("count:(count)") } //for循环以外的地方使用变量的值 var tmp = 0 for var i = 0; i < 10; i++ { println("i的值是:(i)") tmp = i } println("结束循环") //for - in循环:专门遍历字符串、范围、序列、集合等包含元素 var name = "huxu" for n in name { println(n) } //如果根据字符串长度确定循环次数,不要在循环体内遍历字符,用下划线_代替常量名 for _ in name { println("1") } println() //变量范围 var max = 5 var result = 1 for num in 1...max { result *= num } println("结果是:(result)") //嵌套循环 for var i=0;i<5;i++ { for var j=0;j<3;j++ { println("i的值是:(i),j的值是:(j)") } } //控制循环结构 //Swift提供来continue和break来控制循环结构,return可以结束整个方法 for var i=0;i<10;i++ { println("i的值是:(i)") if i == 2 { //执行循环结束语句 break } } //break不仅可以结束其所在循环,还可以直接结束其外层循环,在break后加一个标签 //外层循环,outer作为标志符 outer: for var i=0;i<5;i++ { //内循环 for var j=0;j<3;j++ { println("i的值是:(i),j的值是:(j)") if j==1 { //跳出outer标签所标致的循环 break outer } } } //使用continue忽略本次循环剩下的语句 for var i=0;i<3;i++ { println("i的值是(i)") if i==1 { //忽略下面的语句 continue } println("没有打印哪个呢") } println("continue结束") //continue后可以紧跟一个标签 //用return结束方法 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- oracle--查看表空间大小以及修改表空间大小
- .net – 我应该使用哪个NoSQL数据库进行日志记录?
- fusionchart for flex 仪表盘组件的缩放
- Failed to replace a bad datanode on the existing pipeli
- (1)cocos2d-x-2.2.4搭建windows开发环境
- list – 如何在swift中将回调函数传递给sqlite3_exec?
- 在cocos2d-x中使用LUA
- c# – 外部认证不重定向到外部站点
- Flash开发iOS应用全攻略(五)——如何上传应用到iTunes Co
- 【Flutter 面试】main入口函数会被调用几次