Implementing the game
Collections without examples are boring. Fortunately, we have our game where we use a few collection classes and also other aspects that we will examine in this chapter.
ColorManager
We jumped into the pool filled with collection classes from the implementation of the ColorManager
class. Let's refresh the part of the class that is interesting for us now—the constructor:
final protected int nrColors; final protected Map<Color, Color> successor = new HashMap<>(); final private Color first; Â public ColorManager(int nrColors) { Â Â Â this.nrColors = nrColors; Â Â Â first = new Color(); Â Â Â Color previousColor = first; Â Â Â Â for (int i = 1; i < nrColors; i++) { Â Â Â Â Â Â Â final Color thisColor = new Color(); Â Â Â Â Â Â Â successor.put(previousColor, thisColor); Â Â Â Â Â Â Â previousColor = thisColor; Â Â Â } Â Â Â successor.put(previousColor, Color.none); }
We will use HashMap
to keep the colors in an ordered list. At first, the choice of HashMap
seems...