在Golang中读取一组由空格分隔的整数

2023-12-26

我想从标准输入读取一组整数值并将其放入整数切片中。在不使用的情况下最快的方法是什么for loop.

e.g.

Enter the number of integers
3
Enter the integers
23 45 66

如何将这些值放入整数切片中?


不管怎样,有一个循环,这里没有for and goto循环(试戴一下围棋游乐场 https://play.golang.org/p/LpL9TLuViW):

package main

import "fmt"

func main() {
    fmt.Println(`Enter the number of integers`)
    var n int
    if m, err := Scan(&n); m != 1 {
        panic(err)
    }
    fmt.Println(`Enter the integers`)
    all := make([]int, n)
    ReadN(all, 0, n)
    fmt.Println(all)
}

func ReadN(all []int, i, n int) {
    if n == 0 {
        return
    }
    if m, err := Scan(&all[i]); m != 1 {
        panic(err)
    }
    ReadN(all, i+1, n-1)
}

func Scan(a *int) (int, error) {
    return fmt.Scan(a)
}

io:

Enter the number of integers
3
Enter the integers
10 20 30
[10 20 30]

为了更快的输入扫描重写:

func Scan(a *int) (int, error) {
    return fmt.Scan(a)
}

using:
更快的输入扫描 https://stackoverflow.com/questions/31333353/faster-input-scanning

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Golang中读取一组由空格分隔的整数 的相关文章

随机推荐