亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Maps Go語言中VALUES的數據類型轉換

Maps Go語言中VALUES的數據類型轉換

Go
夢里花落0921 2021-11-08 19:11:51
我在 GO 中有一張地圖:var userinputmap = make(map[string]string)并且其中的值屬于以下類型:[ABCD:30 EFGH:50 PORS:60]并不是說 30,50,60 是這里的字符串。我希望有一個相同的地圖,但數值應該是 float64 類型而不是字符串類型。所需的輸出:var output = make(map[string]float64)我嘗試這樣做,但出現錯誤: cannot use <placeholder_name> (type string) as type float64 in assignment
查看完整描述

1 回答

?
富國滬深

TA貢獻1790條經驗 獲得超9個贊

你不能通過簡單的類型轉換來做到這一點;這兩個映射在內存中有不同的表示。


要解決這個問題,您必須遍歷第一個映射的每個條目,將浮點數的字符串表示形式轉換為 a float64,然后將新值存儲在另一個映射中:


import "strconv"


var output = make(map[string]float64)

for key, value := range userinputmap {

    if converted, err := strconv.ParseFloat(value, 64); err == nil {

        output[key] = converted

    }

}


查看完整回答
反對 回復 2021-11-08
  • 1 回答
  • 0 關注
  • 213 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號