if条件判断和for循环
条件判断if
简单的if判断
package main
import "fmt"
func main(){
age := 18
if age >=18 {
fmt.Println("呦呵长大了")
}else {
fmt.Println("还没长大")
}
}
多分支if
package main
import "fmt"
func main() {
// age := 18
// if age >= 18 {
// fmt.Println("澳门赌场上线了")
// } else {
// fmt.Println("去写暑假作业吧")
// }
age := 18
if age > 35 {
fmt.Println("澳门赌场上线了")
} else if age >= 18 {
fmt.Println("成年了可以做你想做的事了")
} else {
fmt.Println("未成年好好学习")
}
}
作用域问题
package main
import "fmt"
func main() {
if age := 18; age >= 18 { //这里的age是作用于if else的变量
fmt.Println("澳门赌场上线了")
} else {
fmt.Println("好好学习")
}
fmt.Println(age) //这里打印的是func内的变量但是func内没有变量所以这里会报错
}
for循环
for循环的基础格式如下
for 初始语句;条件表达式;结束语句{
循环语句
}
简单的for循环,最常用的方式
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i)
}
}
变种1
package main
import (
"fmt"
)
func main() {
// for i := 0; i < 10; i++ {
// fmt.Println(i)
// }
i := 0
for ; i < 10; i++ {
fmt.Println(i)
}
}
变种三,死循环
package main
import (
"fmt"
)
func main() {
// for i := 0; i < 10; i++ {
// fmt.Println(i)
// }
i := 0
for ; i < 10; {
fmt.Println(i)
i++
}
}
for range(键值循环)
go语言中可以使用for range 遍历数组,切片,字符串,map以及通道(channel)。通过for range遍历的返回值有以下规律:
- 素组,切片,字符串返回索引和值。
- map返回键和值
- 通道(channel)只返回通道内的值
package main
import "fmt"
func main(){
s := "wanghuanqi王涣琦"
for a,i := range s {
fmt.Printf("%d %c
",a,i)
}
}
循环跳出break
for i := 0; i < 10; i++ {
if i == 5 {
fmt.Println("循环结束")
break //直接结束循环
}
}
跳过循环continue
for i := 0; i < 10; i++ {
if i == 5 {
continue //跳出这次循环
}
fmt.Printf("%d
", i)
}