循环结构
一、for 有限次循环
1 for { 2 break //跳出循环 3 continue //掠过本次循环 4 defer //延时执行 开灯关灯案例 5 6 }
解释 i++ //自加运算 func main() { var a int = 123 a +=2 //a= a+2 125 a -=2 //a= a-2 121 a *=2 //a= a*2 246 a /=2 //a= a/2 61 a %=2 //a= a%2 1 a++ //自加1 (a=a+1 等于 a+=1 等于 a++) a-- //自减减 (a=a-1 等于 a-=1 等于 a--) fmt.Println(a) }
1 //for 起始条件; 结束条件; 增长条件 {...} 2 3 4 5 //整数数1-10 6 package main 7 import "fmt" 8 func main() { 9 for i:=1 ; i<10;i++ { 10 fmt.Println("内容是: ",i) 11 } 12 } 13 14 15 16 //倒数数10-1 17 package main 18 import "fmt" 19 func main() { 20 for i:=10 ; i>0; i-- { 21 fmt.Println("内容是: ",i) 22 } 23 } 24 25 26 27 //整数数2,4,6,8,10 28 29 package main 30 import "fmt" 31 func main() { 32 for i:=2 ; i<11; i+=2 { 33 fmt.Println("内容是: ",i) 34 } 35 }
二、for 无限次循环
1 //一直循环 2 3 package main 4 import ( 5 "fmt" 6 "time" 7 ) 8 9 func main() { 10 for { 11 fmt.Println("无内容") 12 time.Sleep(1 * time.Second) //1秒1次 13 } 14 }
1 //无限循环,设置一个结束次数 2 3 package main 4 5 import ( 6 "fmt" 7 "time" 8 ) 9 func main() { 10 var count = 0 11 for { 12 fmt.Println("无内容") 13 count ++ 14 time.Sleep(1 * time.Second) //1秒1次 15 if count >= 10 { 16 break //跳出循环 17 } 18 } 19 }
1 //撸一次代码撩一次妹 2 3 package main 4 5 import ( 6 "fmt" 7 "time" 8 ) 9 10 func main() { 11 var count= 0 12 for { 13 //判断循环次数是基数还是偶数,然后相应输出 14 if count%2 == 1 { 15 fmt.Println("我爱撸代码") 16 } else { 17 fmt.Println("我爱撩妹") 18 } 19 20 count ++ 21 time.Sleep(500*time.Millisecond) 22 //限定循环次数 23 if count >=5{ 24 break //跳出循环 25 } 26 } 27 }
1 //每天撸代码,缝五休息. 2 3 package main 4 5 import ( 6 "fmt" 7 "time" 8 ) 9 10 func main() { 11 var count = 0 12 for { 13 count ++ 14 //只要是5的倍数模5肯定得0,相反如果不等于0 就输出爱代码 15 if count%5 == 0 { 16 continue //掠过本次循环 17 } 18 19 fmt.Println("我爱撸代码", count) 20 time.Sleep(500 * time.Millisecond) 21 //限定循环次数 22 if count >= 11 { 23 break //跳出循环,如果不声明,那么会无限次的循环输出。 24 } 25 } 26 }