Go lang에는 set이 없지만 비슷하게 만들어 사용할 수 있다.
func setAdd(s map[int]bool, v int) map[int]bool {
s[v] = true
return s
}
func main() {
s := make(map[int]bool)
s = setAdd(s, 1)
s = setAdd(s, 2)
s = setAdd(s, 3)
s = setAdd(s, 2)
fmt.Println(s)
delete(s, 3)
fmt.Println(s)
}
map[1:true 2:true 3:true]
map[1:true 2:true]
// 길이 3짜리 slice 안에 map[int]bool 이 존재.
m := make([]map[int]bool, 3, 3)
// map을 초기화해줘야 사용할 수 있다.
for i := range m{
m = map[int]bool{}
}