Chapter 7. labeling data: Maps


Throwing things in piles is fine, until you need to find something again. You’ve already seen how to create lists of values using arrays and slices. You’ve seen how to apply the same operation to every value in an array or slice. But what if you need to work with a particular value? To find it, you’ll have to start at the beginning of the array or slice, and look through Every. Single. Value.

What if there were a kind of collection where every value had a label on it? You could quickly find just the value you needed! In this chapter, we’ll look at maps, which do just that.

Counting votes

A seat on the Sleepy Creek County School Board is up for grabs this year, and polls have been showing that the election is really close. Now that it’s election night, the candidates are excitedly watching the votes roll in.


This is another example that debuted in Head First Ruby, in the hashes chapter. Ruby hashes are a lot like Go maps, so this example works great here, too!


Name: Amber GrahamOccupation: Manager


Name: Brian MartinOccupation: Accountant

There are two candidates on the ballot, Amber Graham and Brian Martin. Voters also have the option ...

Get Head First Go now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.