我想格式化一个整数数组。如何发送数组以便每个动词接收数组的不同元素?

我有一个可变的整数数组,我想将其格式化为字符串。当我传递数组时,它被放入第一个格式动词中,其余的被列为缺失。例如,我传递[10, 100, 250, 99],格式为“%02d-%04d-%04d-%02d”。我希望它返回“10-0100-0250-99”。在 go 中执行此操作的正确方法是什么?


package main


include (

    "fmt"

)


func main() {

    nums := []int{10,100,250,99}

    format := "%02d-%04d-%04d-%02d\n"


    fmt.Printf(format, 10, 100, 250, 99)

    fmt.Printf(format, nums)

}

[10 100 250 99]-%!d(缺失)-%!d(缺失)-%!d(缺失)(错误)10-0100-0250-99(正确)


倚天杖
浏览 110回答 1
1回答

缥缈止盈

您需要单独传入元素:nums := []int{10,100,250,99}format := "%02d-%04d-%04d-%02d\n"fmt.Printf(format, nums[0], nums[1], nums[2], nums[3])或者使用参数的正确类型fmt.Printf,即[]interface{}:nums := []interface{}{10,100,250,99}format := "%02d-%04d-%04d-%02d\n"fmt.Printf(format, nums...)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go