当前位置: > > > > 如何将切片和数组组合成地图
来源: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知识!