Introduction
Indexers let you access objects like arrays using custom keys. Using custom types as keys makes your code clearer and more organized.
You want to access elements in a collection using a special key type, not just numbers.
You have a class that stores data identified by a custom object, like a coordinate or a name.
You want to make your class easier to use by allowing bracket [] access with your own key type.