当前位置: > > > > 如何将切片和数组组合成地图
如何将切片和数组组合成地图
来源:stackoverflow
2024-04-23 10:45:29
0浏览
收藏
积累知识,胜过积蓄金银!毕竟在Golang开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《如何将切片和数组组合成地图》,就带大家讲解一下知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~
问题内容
我正在尝试在 go 中创建莫尔斯电码映射。我该怎么做呢?如果这样更容易的话,我还可以将一个切片转换为数组。
alphabet := []string{}
for i := 'A'; i <= 'Z'; i++ {
alphabet = append(alphabet, string(i))
}
fmt.Println(alphabet)
morseSlice := [26]string{".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."}
// convert to map that maps letters to morse
var morseDict map[string]string
for i := 0; i > len(morseSlice); i++ {
morseDict[alphabet[i]] = morseSlice[i]
}
fmt.Println(morseDict)
但我的地图是空的。我做错了什么?
解决方案
您的代码将向 nil map 中的条目抛出错误 assignment。要解决这个问题,您需要对其进行初始化。</p>
elementmap := make(map[string]string) //initialize
<p>并且您的条件应更改为 less 比 或者您可以使用 range
for i, ele := range alphabet {
elementMap[ele] = morseSlice[i]
}
好了,本文到此结束,带大家了解了《如何将切片和数组组合成地图》,希望本文对你有所帮助!关注米云公众号,给大家分享更多Golang知识!
