SWIFT中的继续,休息,跌倒,投掷和退货有什么区别?

时间:2016-02-15 06:32:54

标签: swift

有人可以帮我解释一下Swift中这些关键字之间的区别吗?

  • continue
  • break
  • fallthrough
  • throw
  • return

1 个答案:

答案 0 :(得分:38)

继续

  

continue语句结束循环语句当前迭代的程序执行,但不会停止循环语句的执行。

var sum = 0;
for var i = 0 ; i < 5 ; i++ {
    if i == 4 {
        continue //this ends this iteration of the loop
    }
    sum += i //thus, 0, 1, 2, and 3 will be added to this, but not 4
}  

<强>中断:

  

break语句结束循环,if语句或switch语句的程序执行。

var sum = 0;
for var i = 0 ; i < 5 ; i++ {
    if i == 2 {
        break //this ends the entire loop
    }
    sum += i //thus only 0 and 1 will be added
}

<强>下通

  

一个fallthrough语句导致程序执行从switch语句中的一个case继续到下一个case。

var sum = 0
var i = 3
switch i {
case 1:
    sum += i
case 2:
    sum += i
case 3:
    sum += i
    fallthrough //allows for the next case to be evaluated
case i % 3:
    sum += i
}

<强>率测定:

  

使用throw语句抛出错误。

你可能会抛出类似下面的错误,说明由于资金不足,还需要五个硬币。

throw VendingMachineError.InsufficientFunds(coinsNeeded: 5)

<强>返回:

  

返回语句出现在函数或方法定义的主体中,并导致程序执行返回到调用函数或方法。

func myMethod(){
    newMethod()
}

func newMethod(){
    var sum = 0;
    sum += 2;
    if sum > 1 {
        return //jumps back to myMethod()
    }
    sum += 3; //this statement will never be executed
}

返回也可用于从函数返回值。

func myFunc() {
    let value = newFunc() //assigns 5 to "value"
}

func newFunc() -> Int {
    return 5 
}