您好,登錄后才能下訂單哦!
這篇文章主要介紹“Go語言的循環(huán)語句如何使用”,在日常操作中,相信很多人在Go語言的循環(huán)語句如何使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”Go語言的循環(huán)語句如何使用”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
寫法基本和其他語言一致,只是沒有了while循環(huán),用for代替while。
樣例代碼如下
// for循環(huán) func loop1() { sum := 0 for i := 0; i < 100; i++ { sum += i } fmt.Printf("sum = %d\n", sum) // 和while循環(huán)一樣 sum1 := 3 for sum1 <= 10 { sum1 += sum1 } fmt.Printf("sum1 = %d\n", sum1) }
執(zhí)行結(jié)果
sum = 4950
sum1 = 12
可以遍歷索引和值,和Python的enumrate類似。
樣例代碼如下
// for-each使用 func loop2() { strs := []string{"小王", "小明"} for i, str := range strs { fmt.Printf("%v今天第%d次去核酸\n", str, i) } nums := [6]int{1, 2, 4, 6} for i, num := range nums { fmt.Printf("%d - %d\n", i, num) } }
執(zhí)行結(jié)果
小王今天第0次去核酸
小明今天第1次去核酸
0 - 1
1 - 2
2 - 4
3 - 6
4 - 0
5 - 0
和其他語言一樣,循環(huán)打斷關(guān)鍵字break。
樣例代碼如下
// break func loop3() { var a int = 0 var b int = 30 for b > 0 { if a > 4 { break } a++ b -= 3 } fmt.Printf("a=%d,b=%d\n", a, b) var c int = 0 var d int = 30 for i := 0; i < 10; i++ { c++ for j := 0; j < 10; j++ { if d < 0 { break } d-- } } fmt.Printf("c=%d,d=%d\n", c, d) c = 0 d = 30 loop1: for i := 0; i < 10; i++ { c++ for j := 0; j < 10; j++ { if d < 0 { break loop1 } d-- } } fmt.Printf("c=%d,d=%d\n", c, d) }
執(zhí)行結(jié)果
a=5,b=15
c=10,d=-1
c=4,d=-1
注意
1、和java一樣,在多重嵌套循環(huán)里面,如果不對(duì)循環(huán)做標(biāo)識(shí),break只會(huì)打斷最近的循環(huán)。
和break基本一致。
樣例代碼如下
// continue func loop4() { var c int = 0 var d int = 30 for i := 0; i < 10; i++ { c++ for j := 0; j < 10; j++ { d-- if d < 0 { continue } } } fmt.Printf("c=%d,d=%d\n", c, d) c = 0 d = 30 loop1: for i := 0; i < 10; i++ { c++ for j := 0; j < 10; j++ { d-- if d < 0 { continue loop1 } } } fmt.Printf("c=%d,d=%d\n", c, d) }
執(zhí)行結(jié)果
c=10,d=-70
c=10,d=-7
goto是個(gè)有意思的關(guān)鍵字,可以無條件轉(zhuǎn)移到某一行,有點(diǎn)debug的味道。
樣例代碼如下
//goto func loop5() { m := 0 loop1: for m < 20 { fmt.Printf("loop1 -> %d\n", m) if m > 3 { break loop1 } i := 0 loop2: for i < 10 { i++ if i == 5 { goto loop2 } fmt.Printf("loop2 -> %d\n", i) } m++ } }
執(zhí)行結(jié)果
loop1 -> 0
loop2 -> 1
loop2 -> 2
loop2 -> 3
loop2 -> 4
loop2 -> 6
loop2 -> 7
loop2 -> 8
loop2 -> 9
loop2 -> 10
loop1 -> 1
loop2 -> 1
loop2 -> 2
loop2 -> 3
loop2 -> 4
loop2 -> 6
loop2 -> 7
loop2 -> 8
loop2 -> 9
loop2 -> 10
loop1 -> 2
loop2 -> 1
loop2 -> 2
loop2 -> 3
loop2 -> 4
loop2 -> 6
loop2 -> 7
loop2 -> 8
loop2 -> 9
loop2 -> 10
loop1 -> 3
loop2 -> 1
loop2 -> 2
loop2 -> 3
loop2 -> 4
loop2 -> 6
loop2 -> 7
loop2 -> 8
loop2 -> 9
loop2 -> 10
loop1 -> 4
注意
自己在測試的時(shí)候還是碰到點(diǎn)死循環(huán)的問題,要很好理解才能使用,不然比較容易死循環(huán)。
到此,關(guān)于“Go語言的循環(huán)語句如何使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。