背景

众所周知,golang里没有像python的in来判断元素是否在list里存在,可替代的办法是将list放到map里,在map里判断元素是否存在

// 已知list中元素"amber","jack"
arr := [...]string{"amber","jack"}

// 初始化map
var set map[string]struct{}
set = make(map[string]struct{})
// 上面2部可替换为set := make(map[string]struct{})

// 将list内容传递进map,只根据key判断,所以不需要关心value的值,用struct{}{}表示
for _, value := range arr{
	set[value] = struct{}{}
}

// 检查元素是否在map
if _, ok := set["amber"];ok {
	fmt.Println("amber is in the list")
} else {
	fmt.Println("amber is not in the list")

}