回答

收藏

Go 是否具有类似于 Python 的“if x in”结构?

技术问答 技术问答 254 人阅读 | 0 人回复 | 2023-09-12

如果不如何遍历整个数组?x使用 Go检查数组是否存在?语言有结构吗?" y' x0 Q4 D) f0 z7 d: l+ J; I
像Python: if "x" in array: ...
& ~6 h9 _, z# s# j3 s                                                                & k* N" |  _; c8 T8 C' |5 s
    解决方案:                                                               
% |! W# Q+ Z, m/ w9 }1 d5 y% r                                                                在 Go 没有内置的操作符可以做到这一点。您需要遍历数组。您可以编写您的函数来执行此操作,如下所示:8 m4 B5 k* o0 z) F" a& m( y: }  I
    func stringInSlice(a string,list []string) bool    for _,b := range list        if b == a            return true         return false}7 C  K+ O. O4 t6 p& F  O
如果您想在不通过整个列表的情况下检查成员资格,您需要使用映射而不是数组或切片,如下所示:
. s- ^0 {9 q# R- \# _% `
    visitedURL := map[string]bool    "http://www.google.com": true,   "https://paypal.com": true,}if visitedURL[thisSite]    fmt.Println("Already been here.")}. _+ H- l9 \0 _, B8 X- |, I
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则