func demo() {
let x = 10
/**
* 沒有()
* 必須要有{}:在很多公司的開發(fā)規(guī)范中,都是禁止不實用花括號的
* 條件判斷,C語言中,非零即真,在Swift中只有true和false
*/
if x > 20 {
print("大")
}else {
print("小")
}
}
// 在swift中三目運算符會用到很多
// if語句一不小心就會寫得丑爆了
func demo1() {
let a = 10
a > 5 ? print("哈哈") : print("呵呵")
}
func demo2() {
// 冒號來指定變量類型
let oName: String? = "張三"
let oAge: Int? = 20
if oName != nil && oAge != nil {
print("Mr." + oName! + "--" + String(oAge!))
}
// if let 可以設(shè)置數(shù)值,進入分支后,name可以保證一定有值
if let name = oName {
print("Hi~" + name)
}
// 多值的設(shè)置,使用逗號分隔
// 注意:if let語句中不能使用&& || 條件
// if let中只要有任何一個條件為nil,就跳出循環(huán)
if let name = oName, age = oAge {
print("Hi~" + name + "年齡:" + String(age))
}
}
func demo3() {
let oName: String? = "張三"
let oAge: Int? = 20
guard let name = oName else {
print("name 為 nil")
return
}
guard let age = oAge else {
print("age 為 nil")
return
}
// 代碼執(zhí)行到此,name 和 age 一定有值
// 在實際開發(fā)中,復(fù)雜的代碼在條件判斷之后
// 使用guard會讓嵌套層次少一層
print("Hi \(name) -- \(age)");
}
// OC中,switch只能判斷整數(shù)
func switchDemo() {
// 如果開發(fā)時看到error type,要立即檢查或編譯,否則后續(xù)沒有智能提示
let number = "11"
// option + click 是開發(fā)中最重要的組合鍵
/**
* 不需要break
* 不在局限在對int的分支,可以對任意數(shù)據(jù)類型進行檢測
* 各個case之間不會穿透,如果有多個值,使用逗號分隔
* 定義變量,不需要使用{}分隔作用域
* 在switch中,必須涵蓋所有條件,每一個case至少包含一條語句,不能空
*/
switch number {
case "10","11":
let name = "老王"
print("\(name)好")
case "9":
print("良好")
default: break
// print("差")
}
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。