Golang入门到项目实战 | golang中的if语句
Posted 一个热爱编程的通信人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang入门到项目实战 | golang中的if语句相关的知识,希望对你有一定的参考价值。
go语言中的if语句和其他语言中的类似,都是根据给定的条件表达式运算结果来,判断执行流程。
go语言if语句语法
if 布尔表达式
/* 在布尔表达式为 true 时执行 */
注意:在go语言中 布尔表达式不用使用括号。
go语言if语句实例演示
根据布尔值flag判断
import "fmt"
func test1()
var flag = true
if flag
fmt.Println("flag is true")
fmt.Printf("程序运行结束")
func main()
test1()
程序运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
flag is true
程序运行结束
初始变量可以声明在布尔表达式里面,注意它的作用域
package main
import "fmt"
func test3()
if age := 20; age > 18
fmt.Println("你是成年人")
fmt.Printf("程序运行结束")
func main()
test3()
程序运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
你是成年人
程序运行结束
注意:不能使用0或非0表示真假
go语言if语句使用提示:
- 不需使用括号将条件包含起来
- 大括号必须存在,即使只有一行语句
- 左括号必须在if或else的同一行
- 在if之后,条件语句之前,可以添加变量初始化语句,使用;进行分隔
go语言中的if else语句可以根据给定条件二选一。
go语言的if else语句语法
if 布尔表达式
/* 在布尔表达式为 true 时执行 */
else
/* 在布尔表达式为 false 时执行 */
go语言if else语句实例
比较两个数的大小
package main
import "fmt"
func f1()
a := 1
b := 2
if a > b
fmt.Printf("\\"a>b\\": %v\\n", "a>b")
else
fmt.Printf("\\"a<=b\\": %v\\n", "a<b")
func main()
f1()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
"a<=b": a<b
判断一个数是奇数还是偶数
package main
import "fmt"
func f2()
var s int
fmt.Println("输入一个数字:")
fmt.Scan(&s)
if s%2 == 0
fmt.Print("s 是偶数\\n")
else
fmt.Print("s 不是偶数\\n")
fmt.Print("s 的值是:", s)
func main()
f2()
运行结果
guoliangs-MacBook-Pro-15-inch:pro01 guoliang$ go run test.go
输入一个数字:
8
s 是偶数
s 的值是:8g
判断一个人是否成年
package main
import "fmt"
func f3()
age := 20
if age >= 18
fmt.Println("你是成年人")
else
fmt.Println("你还未成年")
func main()
f3()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
你是成年人
特殊写法,在if前面添加执行语句
package main
import "fmt"
func f4()
if age := 20; age >= 18
fmt.Println("你是成年人")
else
fmt.Println("你还未成年")
func main()
f4()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
你是成年人
go语言if语句使用提示:
- 不需使用括号将条件包含起来
- 大括号必须存在,即使只有一行语句
- 左括号必须在if或else的同一行
- 在if之后,条件语句之前,可以添加变量初始化语句,使用;进行分隔
go语言if语句可以进行多重嵌套使用,进行多重判断。
go语言中的if else if语法
if 布尔表达式1
// do something
else if 布尔表达式2
// do something else
else
// catch-all or default
go语言中的if else if语法实例
根据分数判断等级
package main
import "fmt"
func f5()
score := 80
if score >= 60 && score <= 70
fmt.Println("C")
else if score > 70 && score <= 90
fmt.Println("B")
else
fmt.Println("A")
func main()
f5()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
B
同样也可以写成这样
package main
import "fmt"
func f5()
if score := 80; score >= 60 && score <= 70
fmt.Println("C")
else if score > 70 && score <= 90
fmt.Println("B")
else
fmt.Println("A")
func main()
f5()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
B
输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母
package main
import "fmt"
func f6()
// Monday Tuesday Wednesday Thursday Friday Saturday Sunday
var c string
fmt.Println("输入一个字符:")
fmt.Scan(&c)
if c == "S"
fmt.Println("输入第二个字符:")
fmt.Scan(&c)
if c == "a"
fmt.Println("Saturday")
else if c == "u"
fmt.Println("Sunday")
else
fmt.Println("输入错误")
else if c == "F"
fmt.Println("Friday")
else if c == "M"
fmt.Println("Monday")
else if c == "T"
fmt.Println("输入第二个字符:")
fmt.Scan(&c)
if c == "u"
fmt.Println("Tuesday")
else if c == "h"
fmt.Println("Thursday")
else
fmt.Println("输入错误")
else if c == "W"
fmt.Println("Wednesday")
else
fmt.Println("输入错误")
func main()
f6()
运行结果
guoliangs-MacBook-Pro-15-inch:pro01 guoliang$ go run test.go
输入一个字符:
M
Monday
go语言if语句可以嵌套多级进行判断。
go语言if嵌套语法
if 布尔表达式 1
/* 在布尔表达式 1 为 true 时执行 */
if 布尔表达式 2
/* 在布尔表达式 2 为 true 时执行 */
go语言if嵌套实例
判断三个数的大小
package main
import "fmt"
// a>b a>c a
// b>a b>c b else c
func f1()
a := 100
b := 200
c := 3
if a > b
if a > c
fmt.Println("a最大")
else
if b > c
fmt.Println("b最大")
else
fmt.Println("c最大")
func main()
f1()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/tempCodeRunnerFile.go"
b最大
判断男生还是女生,还有是否成年
package main
import "fmt"
// a>b a>c a
// b>a b>c b else c
func f2()
// 判断男女生及年龄
gender := "女生"
age := 16
if gender == "男生"
fmt.Println("男生")
if age > 18
fmt.Println("成年")
else
fmt.Println("未成年")
else
fmt.Println("女生")
if age > 18
fmt.Println("成年")
else
fmt.Println("未成年")
func main()
f2()
运行结果
[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"
女生
未成年
以上是关于Golang入门到项目实战 | golang中的if语句的主要内容,如果未能解决你的问题,请参考以下文章
Golang入门到项目实战 | golang并发编程之channel的遍历