首頁 > 後端開發 > Golang > 如何有效檢查 Go 清單中的值是否存在?

如何有效檢查 Go 清單中的值是否存在?

DDD
發布: 2024-11-29 02:11:08
原創
867 人瀏覽過

How Can I Efficiently Check for Value Existence in a Go List?

檢查 Go 中清單中的值是否存在

在 Python 中,in 關鍵字可以方便地驗證清單中是否存在元素。另一方面,Go 缺乏明確的等價物。本文探討了在 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")
}
登入後複製

注意:

為了提高大型清單的效率,請考慮使用 for range 循環初始化映射或建立一個無類型常數來最佳化布林值作業。

var t = true
valid := map[string]bool{"red": t, "green": t, "yellow": t, "blue": t}
登入後複製

以上是如何有效檢查 Go 清單中的值是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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