Files
go-koans/about_maps.go
Steven Degutis 512c2bd285 maps
2012-03-16 07:56:41 -05:00

32 lines
788 B
Go

package go_koans
func testMaps() {
ages := map[string]int{
"bob": 10,
"joe": 20,
"dan": 30,
}
age := ages["bob"]
assert(age == __int__) // map syntax is warmly familiar
age, ok := ages["bob"]
assert(ok == __bool__) // with a handy addition for presence checking
age, ok = ages["steven"]
assert(age == __int__) // the zero value is used when absent
assert(__bool__) // though there are better ways to check for presence
assert(len(ages) == __int__) // length is based on keys
ages["bob"] = 99
assert(ages["bob"] == __int__) // values can be changed for keys
ages["steven"] = 77
assert(ages[__string__] == 77) // new ones can be added
delete(ages, "steven")
age, ok = ages["steven"]
assert(__bool__) // key/value pairs can be removed
}