Golang参数输入
1.命令行参数(os.Args)
package mainimport ("fmt""os""strconv"
)func main() {for i, num := range os.Args[1:] {fmt.Println("参数"+strconv.Itoa(i)+": ", num)}
}
//输入:
//go run main.go 1 2 3 4
//输出:
// 参数0: 1
// 参数1: 2
// 参数2: 3
// 参数3: 4
2.bufio录入
首先新建一个bufio.NewScanner类型的input变量,然后扫描器从程序的标准输入进行读取。每次调用input.Scan()读取下一行,并将结尾的换行符去掉,通过调用input.Text()读取内容,Scan函数在读取到新行时返回true,否则返回false。
package mainimport ("bufio""fmt""os"
)func main() {inmap := make(map[string]int)input := bufio.NewScanner(os.Stdin)for i := 0; i < 4; i++ {input.Scan()inmap[input.Text()]++}for input, cnt := range inmap {fmt.Println(input, cnt)}
}//输入:
// asas
// asas
// asasa
// asas
//输出:
// asas 3
// asasa 1