站長資訊網
最全最豐富的資訊網站

go語言有沒有while

go語言中沒有while關鍵字,不支持while和do-while循環結構。從功能上講,但凡while語句能做的事情,for語句也可以實現,因此Go語言統一了for語句和while語句。且Go的開發團隊有比較嚴重的潔癖,while并不是一個必要選項,提供多種方式讓開發者選擇,容易讓開發者迷路,產生選擇困難;所以干脆不給選擇的機會,強制讓大家統一風格。

go語言有沒有while

本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

go語言中沒有while關鍵字,,不支持while和do-while循環結構。

循環語句用于重復執行某些程序中的語句。

編程語言中常見的循環語句包括while語句、do-while語句和for語句。但是Go語言中僅有for語言,沒有while語句。從功能上講,但凡while語句能做的事情,for語句也可以實現。因此Go語言統一了for語句和while語句。

且Go的開發團隊有比較嚴重的潔癖,while 并不是一個必要選項,提供多種方式讓開發者選擇,容易讓開發者迷路,產生選擇困難;所以干脆不給選擇的機會,強制讓大家統一風格。

for語句

Go語言的for語句一共有三種:

第一種:

for init; condition; post { 	...	 }
登錄后復制

  • init 一般為賦值表達式,用于循環控制變量及其他變量初始化。
  • condition 關系表達式和邏輯表達式,用于指示循環控制條件。
  • post 一般為賦值表達式,用于增減循環控制變量

以上三點等價于其他編程語言的for語句,因此第一種寫法等價于其他語言的for語句。

第二種:

for condition { 	... }
登錄后復制

第二種寫法等價于其他語言的while語句。因為Go的for語句使不寫括號的,因此刪掉initpost就完全等價于了while語句。因此Go沒有引入while這個關鍵字,直接使用for語句實現while語句。

第三種:

for { 	... }
登錄后復制

第三種寫法等價于其他語言的for(;;),也等價于while(true)

實例:

package main  import "fmt"  func main() { 	res := 1 	n := 10  	for i:=1; i<=n; i++ { 		res *= i 	} 	fmt.Println(n,"的階乘是",res) }  // 10 的階乘是 3628800
登錄后復制

for-each range

Go語言中for循環的range格式可以迭代slice、map、數組、字符串等類型,格式如下:

for k, v := range oldMap { 	newMap[k] = v }
登錄后復制

實例:

package main  import "fmt"  func main() { 	nums := [5]int{1, 2, 3, 4, 5} 	for i,e := range nums { 		fmt.Println("索引", i, "位置上的數值為", e) 	} }  // 索引 0 位置上的數值為 1 // 索引 1 位置上的數值為 2 // 索引 2 位置上的數值為 3 // 索引 3 位置上的數值為 4 // 索引 4 位置上的數值為 5
登錄后復制

同Python,Go語言也使用下劃線_來接住不需要的返回值。

for _,e := range nums { 	... }
登錄后復制

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产伦精品一区二区三区四区| 精品无码国产污污污免费网站 | 伊人久久精品影院| 国产高清在线精品免费软件| 99久久久精品免费观看国产| 精品亚洲麻豆1区2区3区| 无码国产精品一区二区免费vr| 夜精品a一区二区三区| 亚洲国产精品无码久久98| 人人妻人人澡人人爽人人精品 | 久久亚洲国产精品五月天婷| 老司机免费午夜精品视频| 久久国产精品99国产精| 中文乱码精品一区二区三区 | 亚洲处破女AV日韩精品| 国精品无码一区二区三区左线| 久久e热在这里只有国产中文精品99 | 亚洲精品无码你懂的| 91精品国产91久久久久青草| 久久久久亚洲精品影视| 国产精品国产亚洲精品看不卡| 国产乱码精品一区二区三区中文| 国内精品综合久久久40p| 少妇伦子伦精品无吗| 精品无码人妻一区二区三区不卡| 国产精品成人免费观看| 亚洲七七久久精品中文国产| 全国精品一区二区在线观看| 日韩一级免费视频| 四虎永久在线精品免费一区二区| 日韩黄色片在线观看| 日韩在线视频不卡一区二区三区| 日韩AV无码中文无码不卡电影| 日韩丰满少妇无吗视频激情内射| 亚洲日韩精品无码专区| 视频精品一区二区三区| 九九热视频精品在线| 亚洲一区无码精品色| 精品人妻V?出轨中文字幕| 99精品高清视频一区二区| 99热婷婷国产精品综合|