檢查Go 中清單中的值成員資格
在Python 中,in 關鍵字可以方便地檢查清單中是否存在某個值。 Go 中的類似功能需要稍微不同的方法。
一種選擇是使用帶有字串鍵和整數值的映射。但是,這種方法需要指定一個未使用的整數值,這可能很不方便。
使用具有布林值的映射
更優雅的解決方案涉及使用字串建立映射鍵和布林值。映射中缺少鍵會傳回預設布林值 false。
valid := map[string]bool{"red": true, "green": true, "yellow": true, "blue": true} if valid[x] { fmt.Println("found") } else { fmt.Println("not found") }
使用切片最佳化
如果您有大量有效值,請考慮使用切片將映射值初始化為true:
for _, v := range []string{"red", "green", "yellow", "blue"} { valid[v] = true }
Shorter Initialization使用常數
或者,您可以創建一個無類型或布林常數並進一步優化初始化:
const t = true valid := map[string]bool{"red": t, "green": t, "yellow": t, "blue": t}
透過採用這些技術之一,您可以有效地檢查一個值是否包含在Go 中的清單中,提供與Python 的in 關鍵字類似的功能。
以上是如何有效地檢查 Go 清單中的價值成員資格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!