Swift continue 語句

在本文中,您將學(xué)習(xí)使用continue語句來轉(zhuǎn)移程序的控制權(quán)。

在使用循環(huán)或條件語句時(shí),可能需要跳過循環(huán)內(nèi)的某些語句或立即終止循環(huán),而不檢查測試表達(dá)式。

在這種情況下,將使用break和Continue語句。訪問該頁面以了解有關(guān)break語句的更多信息。

continue 語句停止循環(huán)或switch語句內(nèi)語句的執(zhí)行。然后,它將跳回對(duì)循環(huán)的測試表達(dá)式再次求值。

Continue 語句的語法為:

continue

continue 語句如何工作?

Swif continue語句

示例1:for循環(huán)中的Swift continue語句

for i in 1...5 {
    if i == 4 {
        continue
    }
    print("i = \(i)")
}

運(yùn)行該程序時(shí),輸出為:

i = 1
i = 2
i = 3
i = 5

在上面的程序中,要迭代的序列的范圍是1到5。

i 的值設(shè)置為range(1)中的第一個(gè)數(shù)字,并在每次迭代時(shí)更新為范圍的下一個(gè)數(shù)字。

循環(huán)還包含表達(dá)式 i = = 4的 if 語句。當(dāng)表達(dá)式求值為 true 時(shí)(在第4次迭代中)執(zhí)行 continue 語句,跳過語句print("i = \(i)") 的執(zhí)行 ,轉(zhuǎn)到下一次迭代(i = 5)。

示例2:while循環(huán)中的Swift continue語句

var intialLevel:Int = -5, finalLevel:Int = 2
var currentLevel:Int = intialLevel

while currentLevel < finalLevel {
    if intialLevel < 0 {
        print("起始級(jí)別必須為正數(shù)")
        intialLevel = 0
        currentLevel = intialLevel
        continue //跳過當(dāng)前執(zhí)行
    }
    currentLevel += 1
    print("next level")
}
print("在while循環(huán)之外")

運(yùn)行該程序時(shí),輸出為:

起始級(jí)別必須為正數(shù)
next level
next level
在while循環(huán)之外

在以上程序中,while循環(huán)運(yùn)行直到 currentLevel小于finalLevel。由于intialLevel分配的值是-5且小于0,因此執(zhí)行 if 內(nèi)部語句。

當(dāng)程序到達(dá)continue語句時(shí),它跳過while循環(huán)的語句,然后跳來再次檢查 currentLevel<finalLevel 的條件。

示例3:帶有嵌套循環(huán)的Swift Continue語句

for j in 1...2 {
    for i in 1...5 {
        if i == 4 {
            continue
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

運(yùn)行該程序時(shí),輸出為:

i = 1
i = 2
i = 3
i = 5
j = 1
i = 1
i = 2
i = 3
i = 5

在上面的程序中,if i==4中的continue語句只跳過內(nèi)部for循環(huán)中語句 print("i=\(i)") 的執(zhí)行。但是,它不會(huì)跳過 for i in 1...5 外部循環(huán)的執(zhí)行。

但是,如果您也想要continue外循環(huán)怎么辦。為此,您需要在Swift中使用帶標(biāo)簽的語句。

帶繼續(xù)標(biāo)簽的聲明

前綴為(label:Statement)形式的語句稱為帶標(biāo)簽的語句。標(biāo)簽是一個(gè)標(biāo)識(shí)符,您可以稍后在break或continue語句中引用它。

帶continue的標(biāo)簽語句如何工作?

帶有繼續(xù)標(biāo)記的Swift標(biāo)記語句

這里,label是一個(gè)標(biāo)識(shí)符。當(dāng)continue語句執(zhí)行時(shí),程序?qū)⑻^循環(huán)中coe的其余部分,并跳轉(zhuǎn)到label開始的語句。

示例4:帶有 continue 標(biāo)簽的語句

outerloop: for j in 1...2 {
    innerloop: for i in 1...5 {
        if i == 4 {
            continue outerloop
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

運(yùn)行該程序時(shí),輸出為:

i = 1
i = 2
i = 3
i = 1
i = 2
i = 3

在以上程序中,有兩個(gè)標(biāo)記的語句 outerloop: for j in 1...2 和 innerloop: for i in 1...5。

標(biāo)簽名稱outerloop和innerloop可以與continue語句一起使用。

在程序中,我們使用了continue outerloop 語句來跳過內(nèi)外循環(huán)中語句的執(zhí)行。在這個(gè)過程中,i 和 j的值都會(huì)更新為范圍內(nèi)的下一個(gè)數(shù)字

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清