// Primero declara el mapa var m1 map [string] string // Luego usa la función make para crear un mapa que no sea nulo, no se puede asignar un mapa nulo m1 = make (map [string] string) // Finalmente, asigna m1 [ al mapa declarado "a"] = "aa" m1 ["b"] = "bb" // Crea m2 directamente : = make (map [string] string) // Luego asigna m2 ["a"] = "aa " m2 [" b "] =" bb " // Integración de inicialización + asignación m3: = mapa [cadena] cadena { " a ":" aa ", " b ":" bb ", } // ==== ==== ================================== // Encuentra si el valor clave existe si v, ok : = m1 ["a"]; ok { fmt.Println (v) } else { fmt.Println ("Clave no encontrada") } // Recorre el mapa para k, v: = rango m1 { fmt.Println (k, v) }
Pero nuestro código es:
data := map[string]interface{}{
"F_mobile" : mf.Mobile,
"F_certificate_code": mf.ID,
"F_true_name": gbkTrueName,
"F_create_time": timeStr,
"F_modify_time": timeStr,
}
Estos valores son todos de tipo cadena, ¿por qué usar la interfaz?