Heim >Backend-Entwicklung >Golang >GO, Kartenschlüssel wurden alle aktualisiert
Die neuesten Nachrichten von PHP-Editor Yuzai: Alle GO-Kartenschlüssel wurden aktualisiert! GO Map Key ist eine leistungsstarke Navigationsanwendung, die Benutzern genaue und praktische Kartennavigationsdienste bietet. Nach dem letzten Update wurden dem GO-Kartenschlüssel weitere Funktionen und Optimierungen hinzugefügt, sodass Benutzer einfacher auf die benötigten Navigationsinformationen zugreifen können. Egal, ob Sie unterwegs sind, reisen oder nach Dienstleistungen in der Nähe suchen, GO Map Key bietet Ihnen umfassende Hilfe. Unabhängig davon, ob Sie mit dem Auto unterwegs sind oder zu Fuß unterwegs sind, kann die GO-Kartentaste die optimale Route planen und Ihnen in Echtzeit Navigationsanweisungen geben. Egal wo Sie sind, der GO-Kartenschlüssel ist Ihr richtiger Helfer auf Reisen!
Stimmt etwas mit meiner Vorgehensweise nicht? Ich verstehe nicht, warum alle Kartenschlüssel aktualisiert werden, es sollte nur der „Ether“-Schlüssel sein.
data := []byte(` [{".id":"*1","actual-mtu":"1500","default-name":"ether1","disabled":"false","l2mtu":"1514","type":"ether"},{".id":"*2","actual-mtu":"1500","default-name":"bridge2","disabled":"false","l2mtu":"1514","type":"bridge"}] `) var dst []map[string]string json.Unmarshal(data, &dst) rxTx := map[string]int{"rx": 0, "tx": 0} typeMap := map[string]map[string]int{"wlan": rxTx, "ether": rxTx, "bridge": rxTx, "wg": rxTx} fmt.Println(typeMap) for _, v := range dst { if v["type"] == "ether" { typeMap["ether"]["rx"] += 1 typeMap["ether"]["tx"] += 1 } } fmt.Println(typeMap)
Geh auf den Spielplatz
Die Ausgabe wird sein
map[桥:map[rx:1 tx:1] ether:map[rx:1 tx:1] wg:map[rx:1 tx:1] wlan:map[rx:1 tx:1]]
p>
Aber ich freue mich darauf
map[桥:map[rx:0 tx:0] ether:map[rx:1 tx:1] wg:map[rx:0 tx:0] wlan:map[rx:0 tx:0]]
p>
Das liegt daran, dass Zuordnungen eigentlich wie Zeiger sind Alle Schlüssel „wlan“, „ether“, „bridge“ und „wg“ zeigen auf denselben Wert (rxTx). Es gibt viele Möglichkeiten, das zu erreichen, was Sie wollen, aber hier ist eine schnelle Lösung:
data := []byte(` [{".id":"*1","actual-mtu":"1500","default-name":"ether1","disabled":"false","l2mtu":"1514","type":"ether"},{".id":"*2","actual-mtu":"1500","default-name":"bridge2","disabled":"false","l2mtu":"1514","type":"bridge"}] `) var dst []map[string]string json.Unmarshal(data, &dst) rxTxWlan := map[string]int{"rx": 0, "tx": 0} rxTxEther := map[string]int{"rx": 0, "tx": 0} rxTxBridge := map[string]int{"rx": 0, "tx": 0} rxTxWg := map[string]int{"rx": 0, "tx": 0} typeMap := map[string]map[string]int{"wlan": rxTxWlan, "ether": rxTxEther, "bridge": rxTxBridge, "wg": rxTxWg} fmt.Println(typeMap) for _, v := range dst { if v["type"] == "ether" { typeMap["ether"]["rx"] += 1 typeMap["ether"]["tx"] += 1 } } fmt.Println(typeMap)
Das obige ist der detaillierte Inhalt vonGO, Kartenschlüssel wurden alle aktualisiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!