条件判断语句
获取命令行参数
Go的标准库还提供了 flag 包,用于更方便地解析命令行标志和选项。通过定义标志以及它们对应的类型,可以处理具有特定格式的参数,比如 -key value 这样的键值对。并且可以通过 flag.Args() 来获取那些未被识别为标志的剩余参数。
注意,使用 flag 包需要调用 flag.Parse() 函数来触发标志的解析过程。同时,可以指定默认值(如上例中的空字符串)并在标志没有被提供时使用。
1package main
2
3import (
4 "flag"
5 "fmt"
6)
7
8func main() {
9 var user string
10 var password string
11
12 // 定义并解析标志
13 flag.StringVar(&user, "u", "", "username")
14 flag.StringVar(&password, "p", "", "password")
15
16 flag.Parse()
17
18 // 检查标志是否已设置并打印值
19 if user != "" {
20 fmt.Println("Username:", user)
21 }
22 if password != "" {
23 fmt.Println("Password:", password)
24 }
25
26 // 获取非标志参数
27 remainingArgs := flag.Args()
28 fmt.Println("Non-flag arguments:", remainingArgs)
29} 1package main
2
3import (
4 "flag"
5 "fmt"
6)
7
8func main() {
9 var a int
10 var b int
11 flag.IntVar(&a, "x", -1, "请输入x的值")
12 flag.IntVar(&b, "y", -1, "请输入y的值")
13 flag.Parse()
14 fmt.Println(a, b, a+b)
15}- 输入一个数,判断它能被 3 整除,且能被 5 整除。输出“能”或 “不能”
- 输入三个整数,判断它们能否构成一个三角形。