如何在golang中仅使用一个循环进行调整?

因此,让我们检查一下是否存在数组


arr := []string{"kek", "kok", "hehehe"}

因此,在打印它们时,我想要一个格式化的输出,例如


kek      value

kok      value

hehehe   value

在此输出中,所有内容都按单词 和 之间的顺序排列。value


maxLength := 0

arr := []string{"kek", "kok", "hehehe"}


for _, name := range arr {

    l := len(name)

    if l > maxLength { maxLength = l }

}


for _, name := range arr {

    fmt.Println(name, strings.Repeat("", (maxLength-len(name))+3), "value")

}

我正在使用此代码来生成上面的输出。此方法使用 2 个循环。我可以让它成为1循环吗?使用这段代码甚至值得吗?只是一个奇怪的问题。谢谢。


牛魔王的故事
浏览 68回答 1
1回答

HUX布斯

您可以与猜测的填充一起使用来执行此操作。但是,如果您需要精确,那么您需要第二个循环。fmt.Printffor _, name := range arr {     fmt.Printf("%-10s\t%s\n", name, "value") }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go