package main func a () (int, int) { return 6,7 } func b() int { return 8 } func commaOk() { var i interface{} = "hello" s, ok := i.(string) assert(ok) assert(s == "hello") s1 := i.(string) assert(s1 == "hello") m := map[int]int{1:10, 2:20} int1, ok := m[1] assert(int1 == 10) assert(ok) int2 := m[2] assert(int2 == 20) t1, t2 := a() assert(t1 == 6) assert(t2 == 7) t3 := b() assert(t3 == 8) t01, t02 := 33, m[2] assert(t01 == 33) assert(t02 == 20) } func arrayKey() { m := make(map[[2]int]int) m[[2]int{1, 2}] = 1223 m[[2]int{2, 2}] = 12233 assert(m[[2]int{1, 2}] == 1223) m2 := make(map[[2]string]int) m2[[2]string{"1", "2"}] = 1223 m2[[2]string{"2", "2"}] = 12233 assert(m2[[2]string{"1", "2"}] == 1223) } func main() { var s1 = map[int]int{1:2, 3: 888} var v = s1[1] var v2 = s1[100] s1[0], v, v2 = 8, s1[100], s1[1] var v3 = s1[0] s1[2] = 3 assert(v == 0) assert(v2 == 2) assert(v3 == 8) assert(s1[2] == 3) assert(s1[3] == 888) commaOk() arrayKey() }