我想写一个函数,可以接受固定长度的数组,但不同的数组有不同的长度。
我知道我可以用 arr[:] 传递切片(该函数将接受 []T),但是还有另一种方法,也许更有效吗?
我正在使用一个结构,我想用固定长度的数组来维护(出于文档目的),因此在声明时到处使用切片对于我的目的来说并不是最佳选择。
我有这样的 JSON:
{
"store_name": "Barry's Farmer's Market",
"foods": {
"apple": "5.91",
"peach": "1.84",
"carrot": "6.44",
"beans": "3.05",
"orange": "5.75",
"cucumber": "6.42"
},
"store_location": "Corner of Elm Tree Hill and 158th Street"
}
Run Code Online (Sandbox Code Playgroud)
我想使用以下命令将其解析为未知的 JSON map[string]interface{}:
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
"os"
)
func main() {
var parsed map[string]interface{}
f, err := ioutil.ReadFile("input.txt")
if err != nil {
fmt.Printf("Error: %v", err)
os.Exit(1)
}
err = json.Unmarshal(f, &parsed)
for k, v := range parsed {
//fmt.Println(parsed["foods"])
fmt.Println(k + string(v)) …Run Code Online (Sandbox Code Playgroud)