Swift 逻辑分支 if / switch
2017-11-08 本文已影响27人
追逐_chase
Swift.png
逻辑分支的分类
- if语句
- switch语句
- 三目运算符 (相当于 If else)
if分支语句
- 注意:
- 在swift语言中必须标明是真假(bool)
- 必须有明确的Bool类型
- 不在有隐式转换(关系非0即为真的说法不在存在)
- Bool的取值:false/true
- 在Swift中 if语句格式,和OC中的不一样 ,条件可以不加()
if 条件 { } ;
- 在swift语言中必须标明是真假(bool)
let a = 10;
//错误
// if a {
//
// print("进来咩有");
// }
//条件必须是 bool类型
//正确
if a > 2 {
print("进if语句了吗");
}
if a == 10 {
print("是不是为真");
}else {
print("不是真的");
}
三目运算符
三目运算符 其实就是 if else的另外一种形式
let a = 1;
a == 1 ? print("是1"):print("不是3");
guard的使用
- guard是Swift2.0新增的语法
- guard与if语句非常类似,它设计的目的是提高程序的可读性
- guard必须使用在函数里面
- guard语句必须带有else语句
- 当条件表达式为true的时候跳过else语句中的内容,执行语句组内容
- 条件表达式为false的时候执行else语句中的内容,跳转语句一般是return、break、continue和throw
- 表达形式
guard 条件表达式 else {
// 条换语句
return/break
}
语句组
- 应用
var word = 10;
//定义一个函数
func test(word:Int)->Void {
guard word > 9 else {
print("是不是大鱼10");
return;
}
print("你看看对不");
}
//调用
test(word: word);
//打印结果:你看看对不
switch语句
- 在Swift中的switch 可以没有(),case后面也可以没有break.
- 添加 可以是 整行,浮点型,字符串型,区间判断(0~10)
整型
//***************简单switch*****************
let sex = 1
switch sex {
case 0 :
print("男")
case 1 :
print("女")
default :
print("其他")
- 在一个case判断中,可以判断多个值,多个值用 , 隔开
//****************一个case可以判断多个值******************
let sex = 0
switch sex {
case 0, 1:
print("正常人")
default:
print("其他")
}
浮点型
let f = 3.14
switch f {
case 3.14:
print("π")
default:
print("not π")
}
字符串型
let m = 5
let n = 10
var result = 0
let opration = "+"
switch opration {
case "+":
result = m + n
case "-":
result = m - n
case "*":
result = m * n
case "/":
result = m / n
default:
result = 0
}
print(result)
区间
- 区间
- 开区间: 0..< 5 表示是0-4 不包括5
- 闭区间:0...10 表示:0-10
// ******************区间*****************
let score = 90;
switch score {
case 0..<60:
print("不及格");
case 60..<80:
print("及格");
case 80..<90:
print("良好");
default:
print("优秀");
}