🔖
Golangの_ , ok句の使用例
このページでは、_,ok句の使用例について記述します。
_, ok句とは
Go言語において マップの要素の取得 や 型アサーション などでよく使われる構文です。
この句は、第二の戻り値として 真偽値 を返すことで、操作が成功したかどうかを判定します。
具体的な使用例
- マップの要素の取得:
func main() {
myMap := map[string]int{
"apple": 5,
"banana": 3,
"cherry": 7,
}
// マップから要素を取得
value, found := myMap["banana"]
if found {
fmt.Printf("Found value: %d\n", value)
} else {
fmt.Println("Key not found")
}
}
このコードでは、myMap
からキー "banana"
の値を取得しています。found
の値が true
の場合、要素が見つかったことを示します。
- 型アサーション:
if str, ok := myInterface.(string); ok {
fmt.Println("String value:", str)
} else {
fmt.Println("Failed to assert as string type")
}
この例では、型アサーションでmyInterfaceをstringの型にキャストしています。キャストできなかった場合、strにはstringのゼロ値である空文字列が、okにはfalseが格納されます。
Discussion