美文网首页
Swift-标签语句

Swift-标签语句

作者: Joker_King | 来源:发表于2016-11-19 17:29 被阅读222次

在Swift中,可以在其他循环和条件语句中嵌套循环和条件语句,以创建复杂的控制流结构。 然而,循环和条件语句都可以使用break语句来提前结束它们的执行。 因此,有时需要明确关于哪个循环或条件语句希望break语句终止。 类似地,如果您有多个嵌套循环,那么可以显式地说明continue语句应该影响哪个循环。

要实现这些目标,您可以使用语句标签标记循环语句或条件语句。 使用条件语句,可以使用带有break语句的语句标签来结束带标签语句的执行。 使用循环语句,可以使用带有break或continue语句的语句标签来结束或继续执行带标签的语句。

标签语句通过将标签放置在与语句的介绍器关键字相同的行上,后跟冒号来指示。 下面是一个while循环语法的例子,所有循环和switch语句的原理是相同的

*label name*: while *condition* {

*statements*

}
let finalSquare = 25
var board = [Int](repeating: 0, count: finalSquare + 1)
board[03] = +08; board[06] = +11; board[09] = +09; board[10] = +02
board[14] = -10; board[19] = -11; board[22] = -02; board[24] = -08
var square = 0
var diceRoll = 0


gameLoop: while square != finalSquare {
    diceRoll += 1
    if diceRoll == 7 { diceRoll = 1 }
    switch square + diceRoll {
    case finalSquare:
        // diceRoll will move us to the final square, so the game is over
        break gameLoop
    case let newSquare where newSquare > finalSquare:
        // diceRoll will move us beyond the final square, so roll again
        continue gameLoop
    default:
        // this is a valid move, so find out its effect
        square += diceRoll
        square += board[square]
    }
}
print("Game over!")

如果上面的break语句没有使用gameLoop标签,它会断开switch语句,而不是while语句。 使用gameLoop标签可以清楚地知道应该终止哪个控制语句。

当调用continue gameLoop跳转到循环的下一次迭代时,不一定非要使用gameLoop标签。 游戏中只有一个循环,因此对于哪个循环continue语句会产生影响,没有歧义。 但是,使用带有continue语句的gameLoop标签没有任何危害。 这样做与标签在break语句旁边的使用一致,有助于使游戏的逻辑更清晰地阅读和理解。

相关文章

  • Swift-标签语句

    在Swift中,可以在其他循环和条件语句中嵌套循环和条件语句,以创建复杂的控制流结构。 然而,循环和条件语句都可以...

  • swift-给语句打标签

    ///给语句打标签 gameLoop,结合break和continue使用 functest(){ letfi...

  • ECMAScript语句

    标签语句 break语句和continue语句都可以与有标签的语句联合使用,并且标签要在break,continu...

  • 循环语句补充

    一、break语句(跳出语句) 只能作用于switch和循环语句中。 不带标签的break语句 带标签的不带标签的...

  • Swift-条件语句

    Swift 提供两种类型的条件语句:if语句和switch语句。通常,当条件较为简单且可能的情况很少时,使用if语...

  • Mybatis动态标签

    Mybatis动态标签 汇总 标签名称示意select定义查询语句insert定义增加语句update定义修改语句...

  • swift-标签(Label)

    1.Label的创建 2.Label的基础应用 3.富文本设置

  • 3.6.7 标签语句、3.6.8 break 和 contin

    3.6.7 标签语句 便签语句用于给语句加标签。 在这个例子中,start是一个标签,可以在后面通过break或c...

  • Swift-控制转移语句

    控制转移语句改变你代码的执行顺序,通过它可以实现代码的跳转。Swift 有五种控制转移语句: continue b...

  • selectKey标签

    在sql语句前后额外执行的sql语句 标签: keyProperty : 语句结果应...

网友评论

      本文标题:Swift-标签语句

      本文链接:https://www.haomeiwen.com/subject/qdlepttx.html