迴圈語句
迴圈控制語句
參考:從0開始學go之目錄
go 語言提供了以下幾種條件判斷語句:
語句描述
if 語句
if 語句由乙個布林表示式後緊跟乙個或多個語句組成。
if…else 語句
if 語句後可以使用可選的else 語句, else 語句中的表示式在布林表示式為 false 時執行。
if 巢狀語句
你可以在if或else if語句中嵌入乙個或多個if或else if語句。
switch 語句
switch語句用於基於不同條件執行不同動作。
select 語句
select語句類似於switch語句,但是select會隨機執行乙個可執行的case。如果沒有case可執行,它將阻塞,直到有case可執行。
package main
import
"fmt"
func
main()
else
}else
fmt.
printf
("a 值為 : %d\n"
, a )
fmt.
printf
("b 值為 : %d\n"
switch 語句用於基於不同條件執行不同動作,每乙個 case 分支都是唯一的,從上至下逐一測試,直到匹配為止,匹配項後面也不需要再加 break。switch 預設情況下 case 最後自帶 break 語句,匹配成功後就不會執行其他 case,如果我們需要執行後面的 case,可以使用fallthrough。(這一點和c/c++這些語言不同)
package main
import
"fmt"
func
main()
switch
fmt.
printf
("你的等級是 %s\n"
, grade )
}
switch 語句還可以被用於 type-switch 來判斷某個 inte***ce 變數中實際儲存的變數型別。
package main
import
"fmt"
func
main()
x =3.14
switch i := x.
(type
)// x 是 float64 型
參見 理解golang中的inte***ce和inte***ce{}
select 是 go 中的乙個控制結構,類似於用於通訊的 switch 語句。每個 case 必須是乙個通訊操作,要麼是傳送要麼是接收。
select隨機執行乙個可執行的 case。如果沒有 case 可執行,它將阻塞,直到有 case 可執行。乙個預設的子句應該總是可執行的。
迴圈型別
描述for 迴圈
重複執行語句塊
迴圈巢狀
在 for 迴圈中巢狀乙個或多個 for 迴圈
for 迴圈是乙個迴圈控制結構,可以執行指定次數的迴圈。
go 語言的 for 迴圈有 3 種形式,只有其中的一種使用分號。
和 c 語言的 for 一樣:
for init; condition; post
和 c 的 while 一樣:
for condition
和 c 的 for(; ; ) 一樣:
for
for 迴圈的 range 格式可以對 slice、map、陣列、字串等進行迭代迴圈。格式如下:
for key, value :=
range oldmap
示例:
無限迴圈
for
true
迴圈控制語句可以控制迴圈體內語句的執行過程。
go 語言支援以下幾種迴圈控制語句:
控制語句
描述break 語句
經常用於中斷當前 for 迴圈或跳出 switch 語句
continue 語句
跳過當前迴圈的剩餘語句,然後繼續進行下一輪迴圈。
goto 語句
將控制轉移到被標記的語句。必須在當前函式內定義的標籤:
示例:
package main
個人能力有限,如有錯誤或者其他建議,敬請告知歡迎**,謝謝!
Go之流程控制
基本語法 if 表示式1 else if 表示式2 else go語言規定,if 匹配的左括號必須與 if 表示式放在同一行,同理,與 else 匹配的 左括號 else if score 60else 基本語法 for 初始語句 條件表示式 控制語句 條件表示式為真時,迴圈體可以不斷迴圈,直到條件...
Go語言程式設計(七)之流程控制
程式語言的流程控制語句,用於設定計算執行的次序,建立程式的邏輯結構。可以說,流程控制語句是整個程式的骨架。從根本上說,流程控制只是為了控制程式語句的執行順序,一般需要與各種條件配合,因此,在各種流程中,會加入條件判斷語句。流程控制語句一般起以下3個作用 選擇,即根據條件跳轉到不同的執行序列 迴圈,即...
C 之流程控制
學習到了c 關於語法的學習做一下小小的總結。流程控制分為兩種方法 分支 有條件的執行 迴圈 重複執行相同的語句。1.條件分支 1.三元運算子 2.if語句 if語句功能比較多,是進行決策的有效方式。if語句有兩種形式,一種有else分支,一種沒有。3.switch語句 switch語句與if語句非常...