Golang参数输入
1.命令行参数(os.Args)
go
package main
import (
"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。
go
package main
import (
"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