1、控制流簡(jiǎn)介
控制流是控制語(yǔ)句、語(yǔ)句塊、存儲(chǔ)過(guò)程的執(zhí)行分流。
2、OC 中有哪些控制流
1.if 語(yǔ)句 ? ?/ ? 2.if...else... 語(yǔ)句 ?/ ? 3.switch 語(yǔ)句
4.while? 語(yǔ)句 ?/ ? 5.do...while... 語(yǔ)句 ?/ 6.Bool? 布爾值
3、OC 中控制流的含義
1》if 語(yǔ)句的含義
if(object){
? ? ? ?NSLog("A");
};
NSLog("B");
含義:如果object(對(duì)象)存在,即判斷條件成立。則就執(zhí)行NSLog("A") 語(yǔ)句; 否則,不執(zhí)行 NSLog("A") 語(yǔ)句,按代碼從上到下的指定循序指定下面 NSLog("B") 語(yǔ)句。
2》if...else... 語(yǔ)句的含義
if(object){
? ? ? ?NSLog("A");
}else{
? ? ? ?NSLog("B");
}
含義:如果object(對(duì)象)存在,即判斷條件成立。則就執(zhí)行NSLog("A") 語(yǔ)句; 否則,執(zhí)行 NSLog("B") 語(yǔ)句。
3》switch 語(yǔ)句的含義
switch(value) {
? ? ?case pattern:{
? ? ? ? ? ? ? code1
? ? ?}
? ? ?break;
? ? ?case pattern1:{
? ? ? ? ? ? ? code2
? ? ?}
? ? ?break;
? ? default:{
? ? ? ? ? ? ?code3
? ? }
}
含義:value 在 case 中查找對(duì)應(yīng)的數(shù)值,即 value==pattern || pattern1。找到對(duì)應(yīng)的數(shù)值,這執(zhí)行對(duì)應(yīng)數(shù)值下方{}里面的代碼 code1 || code2。否則,將執(zhí)行default對(duì)應(yīng)的 code3 代碼。
4》while 語(yǔ)句含義
while (condition) {
? ? ? ? ? code
}
含義:先判斷condition 是否為真,如果condition為真,則執(zhí)行code代碼,在判斷 condition 是否還為真,如果為真則執(zhí)行 code 代碼,否則,跳出循環(huán)。如果 condition 一直為真,這一直循環(huán)下去,直到condition 條件為假,跳出循環(huán)。
5》do...while... 語(yǔ)句的含義
do {
? ? ? ?code
} while (condition);
含義:首先執(zhí)行 code 代碼,在判斷condition 條件是否成立,如果為真,則繼續(xù)執(zhí)行 code 代碼;為假則跳出循環(huán)。
6》BOOL 布爾值
YES || NO
4、Swift 中的控制流
1》if 語(yǔ)句
/**
if 語(yǔ)句
特點(diǎn): 不需要將條件判斷語(yǔ)句寫在()里面,但是條件成立時(shí)要執(zhí)行的代碼必須用{}包括住。
*/
if 1+1 == 2 {
? ? ? ? ?print("檢驗(yàn)通過(guò)")
}
2》 if...else... 語(yǔ)句
/**
if...else...
特點(diǎn):同if語(yǔ)句
*/
if 1+2 == 4 {
? ? ? ? ? print("檢驗(yàn)通過(guò)")
}else{
? ? ? ? ? print("檢驗(yàn)未通過(guò)")
}
3》while 語(yǔ)句
/**
while 語(yǔ)句
特點(diǎn):判斷條件不寫在()里面。先判斷,在執(zhí)行
*/
var temp = 0
while temp<10 {
? ? ? ? ?temp += 1
}
print(temp)
4》 repeat... whlie... 語(yǔ)句
/**
repeat...while... 語(yǔ)句 (do...while...)
特點(diǎn):先執(zhí)行,在判斷
*/
var num = 0
repeat {
? ? ? ? ?num += 1
}while num<6
print(num)
5》switch 語(yǔ)句
/**
switch 語(yǔ)句
特點(diǎn):根據(jù)給定的參數(shù),在下面 case 中,匹配對(duì)應(yīng)的參數(shù),在執(zhí)行對(duì)應(yīng)參數(shù)下的代碼,要break 結(jié)尾
*/
switch 9 {
? ? ? ? ? ? case 1:
? ? ? ? ? ? break
? ? ? ? ? ? case 6:
? ? ? ? ? ? break
? ? ? ? ? ?case 9:
? ? ? ? ? ? ? ? ? ? ? ?print("匹配成功")
? ? ? ? ? ?break
? ? ? ? ? default:
? ? ? ? ? break
}
6》布爾值
/**
true || false 布爾值
*/
let isBool:Bool = true
print(isBool)