iOS讲解迷惑--Swift的分支结构和循环
来源:互联网 发布:java接受formdata 编辑:程序博客网 时间:2024/05/16 16:05
if else
//******************* 分支语句 **********************// if语句的条件必须是bool值 或者bool表达式// bool值只能用true或者falselet isOrNo = trueif isOrNo { print("true")} else { print("false")}var count:Int? = nil // "?" 代表可选count = 20if count > 0 { print(count) // "Optional(20)\n" // \() 用于拼接变量和字符串 print("数字 count 是\(count)"); //"数字 count 是Optional(20)\n" print("数字 count 是\(count!)"); // "数字 count 是20\n" !代表拆包} else { print(count)}// 拼接let str_pinJie = "数字count是\(count)"//"数字count是Optional(20)"let str_pinJie2 = "数字count是\(count!)" // "数字count是20", 加了!号 解包// 也可把 声明变量的表达式 作为条件if let count1 = count { print("OK")} else { print("error")}// ps: 分支语句原则上必须保持完整 (有了if 就得有 else)
循环
// ************// 循环 whilevar number = 0while number < 3 { number++ print("number = \(number)")}number// do whilerepeat { number++} while number < 10// for循环for (var num = 0; num < 10; num++) { print("num = \(num)")}// for循环条件可以省略, 但是分号不能省略// 这是个死循环//for ; ; {// print("循环")//}// for循环的省略机制//for ; number < 2; {// print(number)// number++//}array// for ... in 循环, 变量可以不声明, 只作用于循环作用域中for num2 in array { print(num2) //(7 times)}var dic = [33 : "value"]for value in dic { print(value) // (33, "value") ,打印出的类型是元组 // 枚举字典的时候获得的将是一个存放了键 值的元组, 可通过元组的取值规范获取内容 value.0 // 33 value.1 // "value"}// 使用元组枚举字典的时候, 相当于为元组的元素命名, 可作为局部变量使用for (key, value) in dic { print(key) // "33\n" print(value) // "value\n"}// 占位符 _// 使用占位符忽略掉不想使用的变量for (_, value) in dic { print(value) // "value\n"}for (key, _) in dic { print(key)}// 区域运算符在循环中的使用for value in 1..<5 { print(value)// (4 times)}for value in 1...5 { print(value) // (5 times)}for value in array[2..<3] { print(value)}
switch case
// 分支....... switchvar point = (2,0)switch point {case (0,0): print("原点")case(_, 0): print("X轴") // 执行这个分支 // switch case 分支自带有break, 如果想执行下一分支 使用fallthrough fallthrough // 跳过当前分支, 执行下一个分支的内容, 当前分支也执行case(0,_): print("Y轴") //default:// print("其他(象限内)") // 只要case包含所有情况, 可以不使用default// switch语句必须包含所有的情况分支case(_, _): // print("其他(象限内)") }// 值绑定switch point {case (0, 0) : print("原点")case (let x, 0): // 把x坐标绑定到 let x上 // let x 可以显示任意的数 print("X轴 == \(x)") // "X轴 == 2\n" // fallthrough不能下降到一个存在一个不确定变量的分支中 case (0, let y): print("y轴")default: print("象限内")}/*fallthrough下面的那个case不能声明新变量、常量,也就是不能跳转到case后面接var或者let的语句的。原因是因为fallthrough不会检查where匹配条件,这样便会导致var或者let声明的变量常量无法得到值,所以swift禁止fallthrough到这样的case中。*/switch point {case (0, 0) : print("原点") // 给绑定的x 添加限定条件case (let x, 0) where x == 3 || x == 2: // where在分支基础上可以添加限定条件 如果想添加多个限定条件的话可以使用 && || print("X轴 == \(x)") // 不能下降到一个存在一个不确定变量的分支中 // fallthrough 不能下降到 case (0, let y): print("y轴")default: print("象限内")}// 区间匹配// switch 与区间运算符的结合使用var number2 = 20switch number2 {case 0...10: // 如果是0 到 10 print(number2)//case 11...100: // 20在11 到 100区间 会执行这个分支 print(number2) fallthroughcase 101...200: print(number2)default: print(number2)}for value in 1...100 { print(value) if value == 2 { break; // 当等于2的时候跳出循环// continue; // 跳出等于2的循环, 继续下次循环 }}var tempString = "fdsgafeiourelfhjds"
switch和循环嵌套使用的时候,如要终止循环需要给循环去个名字, 用这个(break循环别名)
// 遍历字符串 str.characters
// tempName: 给循环起名字
// 当for...in循环与switch结合使用的时候执行break语句,首先被识别为switch分支自带的break. ,如果要想终止循环, 此时需要为循环添加别名,使用别名进行打断循环的操作
// tempName 是这个循环的别名tempName: for tempStr in tempString.characters { switch tempStr { case "a", "e", "i", "o" , "u": print(tempStr) // 如果元音 打断循环 //break tempName default: print(tempStr) }}
0 0
- iOS讲解迷惑--Swift的分支结构和循环
- iOS讲解迷惑--Swift中类和结构体
- iOS经典讲解之Swift分支结构与循环详解
- iOS讲解迷惑--Swift中函数的使用
- python的分支结构和循环结构
- iOS讲解迷惑--Swift基础(数据类型, 字符串, 数组, 字典 )
- iOS讲解迷惑--Swift中枚举、继承、协议
- iOS讲解迷惑--AFNetworking的使用
- iOS讲解迷惑--LeanCloud
- iOS C语言 分支结构 循环结构
- C语言的分支结构和循环结构(一)
- C语言的分支结构和循环结构(二)
- C语言的分支结构和循环结构(三)
- iOS经典讲解之Swift结构体和类
- C语言分支结构和循环结构
- 二、分支结构和循环结构
- C语言的分支语句和循环结构知识点
- iOS讲解迷惑深入浅出之SAX解析和JSON 解析
- JavaScript中的高精度计时
- 有生词本的词典软件[挂起]
- Java设计模式——接口型模式之概述
- 设置libevent
- JSP/Servlet-----4、JSP声明
- iOS讲解迷惑--Swift的分支结构和循环
- Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
- 了解cookie和session
- Centos 配置eth0 提示Device does not seem to be present
- Android ListView滑动过程中图片显示重复错乱闪烁问题解决
- SEO介绍(读书笔记)
- JSP/Servlet-----5、JSP表达式
- iOS学习笔记
- C++中逗号表达式和逗号运算符