switch可以不跟() 2> case語句結(jié)束后可以不跟break,默認(rèn)系統(tǒng)會(huì)加switch sex {case..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

08.Switch的使用方法

發(fā)布時(shí)間:2020-06-07 00:12:17 來源:網(wǎng)絡(luò) 閱讀:633 作者:光光ing 欄目:移動(dòng)開發(fā)

// 1.基本用法

let sex = 0   // 0: 1: 其他:其他

// ** 1> switch可以不跟() 2> case語句結(jié)束后可以不跟break,默認(rèn)系統(tǒng)會(huì)加


switch sex {

case 0:

    print("")

    // fallthrough

case 1:

    print("")

default:

    print("其他")

}

// 2.基本用法的補(bǔ)充:

// ** 1>如果希望一個(gè)case中出現(xiàn)case穿透,那么可以在case語句結(jié)束后跟上fallthrough

// ** 2>case后面可以跟多個(gè)條件,多個(gè)條件以,分割

switch sex {

    case 0, 1:

        print("正常人")

    default:

        print("其他")

}

// ** 3.switch可以判斷浮點(diǎn)型

let a : Double = 3.14


switch a {

case 3.14:

    print("π")

default:

    print("π")

}

// ** 4.switch可以判斷字符串

let m = 20

let n = 30

let opration = "+"


var result = 0


switch opration {

case "+":

    result = m + n

case "-":

    result = m - n

case "*":

    result = m * n

case "/":

    result = m / n

default:

    print("非法操作符")

}

// ** 5.switch可以判斷區(qū)間和元祖匹配


let score = 93


switch score {

case 0..<60:

    print("不及格")

case 60..<80:

    print("及格")

case 80..<90:

    print("良好")

case 90...100:    //  元祖匹配

    print("不錯(cuò)噢")

default:

    print("不合理的分?jǐn)?shù)")

}

/*

區(qū)間和元祖匹配

var num = 10;

switch num{

    case 1...9:

        print("個(gè)位數(shù)")

    case 10...99:

        print("十位數(shù)")

    default:

        print("其它數(shù)")


}



var point = (10, 15)

switch point{

    case (0, 0):

        print("坐標(biāo)在原點(diǎn)")

    case (1...10, 10...20): // 可以在元祖中再加上區(qū)間

        print("坐標(biāo)的XY1~10之間")

    case (_, 0): // X可以是任意數(shù)

        print("坐標(biāo)的XX軸上")

    default:

        print("Other")

}

*/

// **6. Swift: 可以判斷對象類型,

//不可以穿透

//可以不寫break,

var rank = "A"

switch rank{

    case "A": //相當(dāng)于if

        print("優(yōu)")

    case "B": // 相當(dāng)于else if

        print("優(yōu)")

    case "C": // 相當(dāng)于else if

        print("優(yōu)")

    default: // 相當(dāng)于else

        print("沒有評級")

}

// ** 7.case中定義變量不用加大括號

var rank4 = "A"

switch rank4{

    case "A":

        var num = 10

        print("優(yōu)")

    case "B":

        print("")

    case "C":

        print("")

    default:

        print("沒有評級")

}

/*

值綁定

var point = (1, 10)

switch point{

    case (var x, 10): // 會(huì)將pointX的值賦值給X

        print("x= \(x)")

    case (var x, var y): // 會(huì)將pointXY的值賦值給XY

        print("x= \(x) y= \(y)")

    case var( x, y):

        print("x= \(x) y= \(y)")

    default:

        print("Other")

}


根據(jù)條件綁定

var point = (100, 10)

switch point{

    // 只有where后面的條件表達(dá)式為真才賦值并執(zhí)行case后的語句

    case var(x, y) where x > y: 

        print("x= \(x) y= \(y)")

    default:

        print("Other")

}

*/


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI