Swift if,if ... else語句

在本文中,您將學(xué)習(xí)使用兩個條件語句:if和if ... else來指定程序執(zhí)行的流程。

在編程中,您可能希望根據(jù)指定的條件是 true 或false(僅在運(yùn)行時知道)執(zhí)行不同的操作。在這種情況下,將使用控制流語句。

Swift if(if-then)語句

Swift中 if語句 的語法為:

if expression {
	// 語句
}
  • expression是一個布爾表達(dá)式(返回 true 或 false)。

  • 如果 expression 求值為 true,則執(zhí)行 If 代碼塊中的語句。

  • 如果 expression 求值為 false,則 if 代碼塊中的語句從執(zhí)行中跳過。

if語句如何工作?

Swift中的if語句如何工作?

示例1:Swift if語句

let number = 10
if number > 0 {
	print("數(shù)字為正。")
}
print("此語句始終執(zhí)行。")

運(yùn)行該程序時,輸出為:

數(shù)字為正。
此語句始終執(zhí)行。

在上面的程序中,我們已經(jīng)用值10初始化了常量number,并且測試表達(dá)式number>0的計算結(jié)果為true。因此,語句print("Number is positive.")在if語句體中執(zhí)行,該語句輸出:數(shù)字為正。在控制臺中。

現(xiàn)在,將number的值更改為負(fù)整數(shù)。比方說-5。在這種情況下的輸出將是:

該語句始終執(zhí)行。

當(dāng)number使用值-5初始化時,測試表達(dá)式number > 0的計算結(jié)果為false。因此,Swift編譯器會跳過if語句主體的執(zhí)行。

Swift if..else(if-else)語句

如果 if 測試表達(dá)式的值為true,則if語句執(zhí)行代碼的特定部分。if語句可以具有可選的else語句。如果測試表達(dá)式為 false,則執(zhí)行else語句主體內(nèi)的代碼。

if-else語句的語法為:

if expression {
	// 語句
} else {
	// 語句
}

if..else 語句如何工作?

Swift中的if..else語句如何工作?

示例2:Swift if else語句

let number = 10
if number > 0 {
	print("數(shù)字為正。")
} else {
	print("數(shù)字不是正數(shù)。")
}
print("此語句始終執(zhí)行。")

運(yùn)行該程序時,輸出為:

數(shù)字為正。
此語句始終執(zhí)行。

在上述程序中,常量number用值 10 初始化,并且測試表達(dá)式 (number > 0) 計算結(jié)果為true。因此,if語句體內(nèi)的 print("數(shù)字為正。") 語句將被執(zhí)行。

此輸出 : 數(shù)字為正。在控制臺中,else主體內(nèi)的語句將從執(zhí)行中跳過。

現(xiàn)在,將number 值更改為負(fù)數(shù)。假設(shè)為 -5。在這種情況下的輸出將是:

數(shù)字不是正數(shù)。
此語句始終執(zhí)行。

當(dāng)number 為  -5 時,測試表達(dá)式number > 0的計算結(jié)果為 false。在這種情況下,將執(zhí)行else主體內(nèi)部的語句,并跳過if主體內(nèi)部的語句。

您還可以在Swift中用三元運(yùn)算符 代替 if..else語句,它是 if ... else 語句的簡寫形式。

Swift if..else..if(if-else-if)語句

在Swift中,還可以在許多代碼中執(zhí)行一個代碼塊。為此,您可以使用 if..else..if 階梯:

if-else-if語句的語法為:

if expression1 {
	// 語句
}
else if expression2 {
	// 語句
}
else if expression3 {
	// 語句
}
.
.
else {
	// 語句
}

if語句從上到下執(zhí)行。一旦測試表達(dá)式為真,將在該if語句的主體內(nèi)執(zhí)行代碼。然后,程序控制跳到if-else-if階梯之外。

如果所有測試表達(dá)式均為 false,則執(zhí)行else主體內(nèi)部的代碼

示例3:Swift if..else..if語句

以下程序檢查number是正數(shù),負(fù)數(shù)還是0。

let number = 0;
if number > 0 {
	print("數(shù)字為正。")
}
else if (number < 0) {
	print("數(shù)字為負(fù)數(shù)。")
}
else {
	print("數(shù)字為0。")
}

運(yùn)行該程序時,輸出為:

數(shù)字為0。

在上面的程序中,常量number用值 0 初始化。由于if 是從上到下執(zhí)行語句,則它優(yōu)先檢查 number > 0 的表達(dá)式計算為 false。

然后,它檢查下一個表達(dá)式 number < 0,該表達(dá)式的結(jié)果也為 false。

因此,print("Number is 0.")將執(zhí)行else主體內(nèi)部的語句,該語句在控制臺中輸出數(shù)字為0

Swift 嵌套 if..else語句

在Swift中,if..else語句中可能包含其他的if..else語句。稱為嵌套if ... else語句。

您還可以在Swift中用switch替換嵌套的if..else語句,這在處理幾個可能的選項(xiàng)時有時是一種更簡單的方法。

嵌套的if-else語句的語法為:

if expression1 {
	if expression2 {
		// 語句
	} else {
		// 語句
	}
}
else {
	if expression3 {
		// 語句
	} else {
		// 語句
	}
}

示例4:嵌套if ... else語句

這是一個使用嵌套if語句查找3個數(shù)字中最大數(shù)字的程序。

let n1 = -1.0, n2 = 4.5, n3 = -5.3
if n1 >= n2 {
	if n1 >= n3 {
		print("最大的數(shù)字是 ", n1)
	}
	else {
		print("最大的數(shù)字是 ", n3)
	}
}
else {
	if n2 >= n3 {
		print("最大的數(shù)字是 ",  n2)
	}
	else {
		print("最大的數(shù)字是 ",  n3)
	}
}

當(dāng)您運(yùn)行上述程序時,輸出將是:

最大的數(shù)字是 4.5
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清