Posted at

Slice、Mapの存在チェック

More than 1 year has passed since last update.


Sliceの存在チェック


  • Array/Sliceのlengthをチェックしなければならない

package main

import (
"fmt"
)

func main() {
row := []string{"1", "2", "3"}

if len(row) >= 3 {
fmt.Println(row[2])
}

if len(row) >= 4 {
fmt.Println(row[3])
}
}


Mapの存在チェック


  • MapのKeyを参照すると、2つめの返り値でそのKeyが存在しているかどうかのbool値を返すので、それをチェック

package main

import (
"fmt"
)

func main() {
m := map[string]int{"a": 1, "b": 2, "c": 3}

if v, ok := m["a"]; ok {
fmt.Println(v)
}

if v, ok := m["d"]; ok {
fmt.Println(v)
}
}