首頁 > 後端開發 > Golang > 如何從 Go 中的「map[string]interface{}」安全存取值?

如何從 Go 中的「map[string]interface{}」安全存取值?

DDD
發布: 2024-11-16 07:51:03
原創
1003 人瀏覽過

How to Safely Access Values from a `map[string]interface{}` in Go?

在Go 中從Map 存取值

從Map 擷取資料時,可以使用Map 的鍵作為取得所需的值指數。但是,在處理儲存類型為 map[string]interface {} 的映射的變數時,鍵將是字串,但值的類型可以不同。

要安全地從此類映射存取值:

myValue := myMap[key].(VariableType)
登入後複製

例如,要檢索字串值:

id := res["strID"].(string)
登入後複製

需要注意的是,這種方法假設型態斷言是正確的。為了確保安全:

var myValue VariableType
var ok bool
if x, found := myMap[key]; found {
    if myValue, ok = x.(VariableType); !ok {
        // Handle errors if the type assertion failed
    }
} else {
    // Handle errors if the key was not found
}
登入後複製

請參閱提供的連結以獲取更多資訊:

  • Go 中的地圖:http://golang.org/doc/ effective_go. html#映射
  • 型別斷言與介面轉換:http://golang.org/doc/ effective_go.html#interface_conversions

以上是如何從 Go 中的「map[string]interface{}」安全存取值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板