Collection types
If you were dealing with a single email address, you would define a string variable to hold that value for you. Now, think about how you would structure your code if you needed to deal with between 0 and 100 email addresses. You could define a separate variable for each email address, but Go has something else we can use.
When dealing with lots of similar data, we put it in a collection. Go’s collection types are arrays, slices, and maps. Go’s collection types are strongly typed and easy to loop over, but they each have unique qualities that mean they are better suited to different use cases.