我正在嘗試在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)但我的地圖是空的。我做錯了什么?
1 回答

嚕嚕噠
TA貢獻1784條經驗 獲得超7個贊
您的代碼將引發錯誤 。要解決此問題,您需要對其進行初始化。assignment to entry in nil map
elementMap := make(map[string]string) //Initialize
并且您的條件應更改為,或者您可以使用less than
range
for i, ele := range alphabet { elementMap[ele] = morseSlice[i] }
- 1 回答
- 0 關注
- 103 瀏覽
添加回答
舉報
0/150
提交
取消