以下是lua表回傳值,它喜歡陣列:
[clientID abcde state 1 activity 8 deviceType 4 seq 1]
![如何將lua表轉換為golang map[string]string](https://img.uj5u.com/2022/01/28/4e48e4f4cc1c4638acb06f2b4ede725b.png)
我想像這里一樣轉換為 golang map[string]string:
{
"clientId": "abcde",
"state": "1",
"activity": "8",
"deviceType": "4",
"seq": "1"}
怎么做 ?
uj5u.com熱心網友回復:
這是我認為的一種方式(一個例子):
func convert() {
var arr = []string{"k1", "v1", "k2", "v2", "k3", "v3", "k4", "v4", "k5", "v5", "k6", "v6"}
var res = map[string]string{}
for i := 0; i < len(arr)/2; i {
val := arr[i*2 : i*2 2]
res[val[0]] = val[1]
}
}
uj5u.com熱心網友回復:
這作業正常
func convert(kvs []string) map[string]string{
if len(kvs)%2 != 0 {
panic("num of kvs item should be even")
}
result := make(map[string]string, len(kvs)/2)
for i := 0; i < len(kvs)-1; i =2 {
result[kvs[i]] = kvs[i 1]
}
return result
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/422262.html
標籤:
