我正在嘗試創建一個函數來解密來自 qwerty... -> abcdef .... 目前我有func Decrypt(strToDecrypt string) string { encrStrng := []rune(strings.ToLower(strToDecrypt)) var decrStrng string = "" for _, i := range encrStrng { switch encrStrng[i] { case 'q' decrStrng += "a"// not gonna type the rest but its q>a, w>b, etc etc. }}每當我嘗試fmt.Println(Decrypt("qwerty"))(在 main 函數 ofc 中)作為測試時,它都會返回 panic: runtime error: index out of range [113] with length 10. 錯誤出現在 switch 語句中,尤其是。我在這個(特定的)問題上找不到任何東西。
1 回答

偶然的你
TA貢獻1841條經驗 獲得超3個贊
在數組的范圍內,第一個值是索引,第二個是元素值。您使用元素值作為索引,以獲取元素值。您應該使用索引:
for i := range encrStrng { switch encrStrng[i] {
或使用值:
for _, i := range encrStrng { switch i {
range
包含在Tour of Go中。
- 1 回答
- 0 關注
- 128 瀏覽
添加回答
舉報
0/150
提交
取消