Swift4 控制流

布尔类型

//忘却OC下的,YES、NO 吧 这里只有true 、false
eg.:
let yes: Bool = true
let no: Bool = false
布尔判断
let isEqual = (1 == 2)// == 等等判断
let isNotEqual = (1 != 2) // != 不等判断
let reverseEqual = !(1 == 2)  // ! 反转判断
let isGreater = (1 > 2)
let isLess = (1 < 2)
<=、 >= ...
逻辑判断
let and = true && true //逻辑与
let or = true || false //逻辑或

if 分支判断

//跟其他语言没有什么不一致
if (condition) {
  print("true")
}else if(othercondition){
  print("...")
}

//在大量罗列各种判断条件时,注意条件组合判断,可以简化代码。

三目运算符

() ?  : 

While 循环

while  {
  
  //可以打断循环,关键字 break
}

repeat-while 循环

//等同于 熟悉的 do - while
 repeat{
  
}while 

区间

//闭区间
let closedRange = 0...5 
//半开区间
let halfOpenRange = 0..<5
//这是不是很像数学上的概念了,亲切!!!

For 循环

for  in  {
    
}

eg.:
let count = 10
var sum = 0
for i in 1..count {
  sum += i
}

eg.:
for _ in 0..

labeled statements

//如果你了解 goto 这个关键字的话,应该会了解要说什么了~ 是一样一样的
var sum = 0
rowLoop: for row in 0..<8 {
   columnLoop: for column in 0..<8 {
     if row == column {
        continue rowLoop
     }
  sum += row * column
  }
}

上面rowLoop、columnLoop 就是标签,标明的应该是一个代码块{}的入口。适当用用还可以哦~

Switch 分支

//直接上例子
let number = 10
switch number {
case 0:
  print("zero")
//多条件分支组合
case 1, 2:
   print("> 0")
//应用区间
case 4...10:
   print("close rage")
//应用where条件绑定
case let x where x == 12:
  print("x")
//匹配其它条件 这里写到最后,等同于default:
/*
case _ :
  print("...")
*/
default:
  print("non-zero")
}

//元组匹配
let detail = (age: 18, height: 170 , weight: 60)
switch detail {
case (18, _,_):
  print("only concern age")
case (_, height: 170, _):
  print("only concern height")
case (_, let height , 60):
  print("only concern weight, height = \(height)")
default:
  print("the other one")
}

你可能感兴趣的:(Swift4 控制流)