前言:
本篇为视频学习笔记
if else
让我们先看一下下面代码:
let age = 4 if age >= 22 { print("Get married") } else if age >= 18 { print("Being a adult") } else if age >= 7 { print("Go to school") } else { print("Just a child") }
注意点:
- if 后面的条件可以省略小括号
- 条件后面的大括号是不可以省略的
if 后面的条件只能是Bool类型
while循环
var num = 5 while num > 0 { print("num is \(num)") num -= 1 } // 打印了5次
- 这里不用num--,是因为从Swift3开始,去除了自增( + +)、自减( - - )运算符
原因:++age + ++age 因为不同的编译器有不同的运算结果,且复杂
repeat-while
var num = -1 repeat { print("num is \(num)") } while num > 0 // 打印了一次
- repeat-while 相当于C语言中的do-while
for循环
- 闭区间运算符: a...b, 意思是a <= 取值 <= b
之前 OC: for (int i = 0; i < 5; i++) // 三段式 ------------------------------------------------------ Swift let names = ["Anna","Alex","Brian","Jack"] for i in 0...3 { print(names[i]) } // Anna Alex Brain Jack - 代表i的取值范围是0~3 ,每当取一下值就会执行一下大括号的代码 ------------------------------------------------------ 还可以这样写: let range = 1...3 for i in range { print(names[i]) } // Alex Brain Jack ------------------------------------------------------ 除了字面量的写法来说,也可以写变量、常量 let a = 1 let b = 2 for i in a...b { print(names[i]) } // Alex Brain for i in a...3 { print(names[i]) } // Alex Brain Jack ------------------------------------------------------ // i 默认是let,有需要时可以声明var for var i in 1...3 { i += 5 print(i) } // 678 ------------------------------------------------------ 如果for循环中根本没有用到 i 建议写成下划线形式 (会有黄色警告⚠️) for _ in 0...3 { print("123") }
半开区间运算符a..<b 意思是a<= 取值 < b
for i in 1..<5 { print(i) }
单侧区间:让区间朝一个方向尽可能的远
let names = ["Anna","Alex","Brian","Jack"] for name in names[2...] { print(name) } // Brian Jack for name in names[...2] { print(name) } // Anna Alex Brain for name in names[..<2] { print(name) } // Anna Alex
for-区间运算符用在数组上
let names = ["Anna","Alex","Brian","Jack"] for name in names[0...3] { print(name) } // Anna Alex Brain Jack 代表一开始取出数组names中0位置的元素赋值给name,然后执行大括号中的代码,依次执行。
...5 放到数组中是有范围的,下面那个是没有范围的是从负无穷到5
let range = ...5 // 负无穷到5 range.contains(7) // false range.contains(4) // true range.contains(-3) // true
网友评论