1. ホーム
  2. if-statement

[解決済み] GoにはPythonのような "if x in "の構成がありますか?

2022-03-24 14:23:53

質問

なし をチェックするには、配列全体を反復処理する必要があります。 x を使用することはできますか?この言語には、そのような構造がありますか?

Pythonのように。 if "x" in array: ...

どのように解決するのですか?

Goにはこれを行う組み込みの演算子がありません。配列に対して反復処理を行う必要があります。このように、自分で関数を書いてやってください。

func stringInSlice(a string, list []string) bool {
    for _, b := range list {
        if b == a {
            return true
        }
    }
    return false
}

リスト全体を反復処理することなくメンバーシップをチェックしたい場合は、以下のように配列やスライスの代わりにマップを使用する必要があります。

visitedURL := map[string]bool {
    "http://www.google.com": true,
    "https://paypal.com": true,
}
if visitedURL[thisSite] {
    fmt.Println("Already been here.")
}