gpt4 book ai didi

go - 为什么在只有3个实体的 map 上创建的数组中有6个条目?

转载 作者:行者123 更新时间:2023-12-01 21:16:14 25 4
gpt4 key购买 nike

我对Go中的 map 类型有一个看似简单的问题。如果我创建一个简单的 map ,例如

var thisMap = map[string]string {
"8f14e45fceea167a5a36dedd4bea2543": "Charming",
"1679091c5a880faf6fb5e6087eb1b2dc": "Citi",
"e4da3b7fbbce2345d7772b0674a318d5": "Chase",
}

将键填充到数组中
keys := make([]string, len(supportedCards))
for k := range supportedCards {
keys = append(keys, k)
}

然后尝试将这些键连接成一个逗号分隔的值,该值可以附加到任何字符串
fmt.Println(strings.Join(keys,","))

我希望结果是
8f14e45fceea167a5a36dedd4bea2543,1679091c5a880faf6fb5e6087eb1b2dc,e4da3b7fbbce2345d7772b0674a318d5

但是我真正看到的是
,,,8f14e45fceea167a5a36dedd4bea2543,1679091c5a880faf6fb5e6087eb1b2dc,e4da3b7fbbce2345d7772b0674a318d5

为什么遍历 map 创建6个条目而不是3个?

https://play.golang.org/p/Ou67K1Kfvsf

最佳答案


keys := make([]string, len(supportedCards))

您将创建一个[]字符串,其中包含三个空元素。您可以使用它们的索引来分配它们。

稍后添加时,将在末尾添加新条目,生成长度为6的结果,其中前三个为空

关于go - 为什么在只有3个实体的 map 上创建的数组中有6个条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58920549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com