string
slicesIn Go programming we reuse common forms. We have string
slices—these can contain many strings, and we can append strings as needed.
With a map, we can place string
slices as the values. So we can associate string
keys with lists of values. This is powerful. It helps in many Go programs.
Main
exampleHere we use a map of string
slices in the main func
. We initialize the map with two keys—each has its own string
slice.
string
slice at the key "dog." The word "dog" is not important—you can change it.for-range
loop over the slice at the key "fish." We print indexes and values for the string
slice.package main import "fmt" func main() { // Create map of string slices. m := map[string][]string { "cat": {"orange", "grey"}, "dog": {"black"}, } // Add a string at the dog key. // ... Append returns the new string slice. res := append(m["dog"], "brown") fmt.Println(res) // Add a key for fish. m["fish"] = []string{"orange", "red"} // Print slice at key. fmt.Println(m["fish"]) // Loop over string slice at key. for i := range m["fish"] { fmt.Println(i, m["fish"][i]) } }[black brown] [orange red] 0 orange 1 red
With append, we can add elements to a string
slice in a map. And with delete we can remove elements. Len will return the element count.
In Go, common things like a map that contains string
slices are important to master. More complex things are nice, but often used less.