Golang Map 介面中的值如何變化?這是一個讓很多Golang開發者困惑的問題。在Go語言中,map是一種非常重要的資料結構,它以鍵值對的形式儲存資料。然而,在使用map時,我們需要注意其中的一些細節,特別是在處理值的變化時。那麼,讓我們來詳細了解一下在Golang的Map介面中,數值是如何變化的吧。
這是程式碼庫 - https://go.dev/play/p/bedouz9qhag
輸出 -
map[something:map[acm:34.12 age:12 dune:dune]]
改變 t 變數的值對 x 有何影響?
package main import "fmt" func main() { x: = make(map[string] interface {}, 10) x["something"] = map[string] interface {} { "dune": "dune", "age": 12 } t: = x["something"].(map[string] interface {}) t["ACM"] = 34.12 fmt.Println(x) }
映射類型是參考類型,如指標或切片,
所以這一行
t := x["something"].(map[string]interface{}) t["ACM"] = 34.12 fmt.Println(x) }
只是為您在 x
變數中建立的現有地圖建立 alias
的淺表副本,因此它們指向您建立的原始地圖所在的相同記憶體位址。
請參閱參考 -https://www.php.cn/link/0bf31d0d702fcac8c8e07912f3347c31
以上是Golang Map 介面中的值如何變化的詳細內容。更多資訊請關注PHP中文網其他相關文章!