先看一下OC中的switch:
1、switch语句分支必须是整数
2、每个语句都需要一个break
3、如果要穿透,case连着写。 如:case 9: case 10:
4、如果定义局部变量,需要用{ }将相关语句括起来
另外,OC中{ }主要用于限定变量的作用域。如:以下两个label命名相同,借助{ }不会报错,且都可以显示在界面上。
UILable *label = [[UILabel alloc]initWithFrame:CGRectMake:(0,20,100,40)];
label.text = “1”;
[self.view addSubView:label];
{
UILable *label = [[UILabel alloc]initWithFrame:CGRectMake:(0,300,100,40)];
label.text = “1”;
[self.view addSubView:label];
}
Swift中的switch:
1、可以针对任意类型的值进行分支,不再局限于整数。(重)
2、一般不需要break。
3、如果使用多值,使用 ,
4、所有分支至少有一条指令。如果什么都不做,才直接使用break.
func demo(str: String) {
switch str {
case "10":
print("A")
case "9":
print("B")
//借助 , 执行多个分支
case "8","7":
print("C")
case "6":
//什么都不做,使用break
break
default:
print("D")
}
}