iOS Swift 学习手册 iOS Developer首页投稿(暂停使用,暂停投稿)

一个关键字就让你震撼Swift的强大且让你即刻喜欢上它

2016-07-29  本文已影响490人  JanzenChen

一个关键字,能做你50行代码也做不到的事情;
一个关键字,能让你震撼它的强大;
一个关键字,能让你即可喜欢上他.
不信?你拉到最后看一眼就行了!

这都行.jpg

不要不相信,这就带你去了解一个关键字,让你相信世界上真有奇迹!
***它仅仅是一个关键字:
--------->❀ switch ❀<----------


我们知道的switch是下面这样的:

 switch (返回整型的表达式) {
    case 整数:
        需要执行的代码A;
        break;
    case 整数:
         需要执行的代码B;
         break;
    ...
    default:
        需要执行的其它代码;
        break;
 }

***让 Swift 来回答你 : 如你所愿! ***


来看看Swift里的switch的优雅表演

你有的我一样有
//单值判断
let sex = 1
switch sex {
case 0:
    print("男")
case 1:
    print("女")
default:
    print("其他")
}

我有的你一样都没有
//多值判断
switch sex {
case 0...1:
    print("正常人")
default:
    print("其他")
}
//浮点型判断
let pi = 3.14
switch pi {
case 3.14:
    print("π")
default:
    print("不是圆周率")
}
//字符判断
let m = 92.3
let n :Double = 0
var result :Double = 0
let option = "+"

switch option {
case "+":
    result = m + n
case "-":
    result = m - n
case "*":
    result = m * n
case "/":
    guard n > 0 else {
        result = m
        break
    }
    result = m / n
default:
    result = 0
}
print(result)
//范围匹配
switch count {
case 0..<10:
    print("1位数")
case 10..<100:
    print("2位数")
case 100..<1000:
    print("3位数")
case 1000..<10000:
    print("4位数")
default:
    print("5位数")
}
//元组匹配
let point = (1,0)
switch point {
case (0,0):
    print("在原点")
case (0..<10,_) :
    print("在y轴右边")
case (_,0..<10) :
    print("在x轴上边")
default:
    print("在不知名的远方")
}
//值绑定
let point2 = (0,-10)
switch point2 {
case (let x, 10)://当y=10时输出x的值
    print(x)
case (0 , let y) where y < 0://当x = 0 且 y < 0 时输出的值
    print(y)
default:
    print("其他")
}
//多值匹配
let currentCharacter: Character = "e"
switch currentCharacter {
case "a", "e", "i", "o", "u":
    print("\(currentCharacter) is a vowel")
case "b", "c", "d", "f", "g", "h", "j", "k", "l", "m",
     "n", "p", "q", "r", "s", "t", "v", "w", "x", "y", "z":
    print("\(currentCharacter) is a consonant")
default:
    print("\(currentCharacter) is not a vowel or a consonant")
}

最后问一句:你震撼了吗?你喜欢上Swift了吗?
参考:http://www.cocoachina.com/ios/20140611/8769.html

上一篇下一篇

猜你喜欢

热点阅读