Объявление индексатора похоже на объявление свойства класса, разница лишь в том, что для индексатора нужен индекс. Как и в свойствах можно использовать элементы get и set. Однако, где свойства возвращают или устанавливают определенный элемент данных, индексаторы возвращают или устанавливают определенное значение объекта. Индексаторы определяются ключевым словом this.
class Clients { private sting[] names = new string[10]; public string this[int index] { get { return names[index]; } set { names[index] = value; } } }
Теперь, когда мы объявили объект Clients, мы используем индекс для обращения к определенным объектам, типа элементов массива:
Clients c = new Clients(); c[0] = "David"; c[1] = "Zineddin"; Console.WriteLine(c[1]); // Outouts "Zineddin"
Индексаторы используются, когда класс представляет собой список, коллекцию или массив объектов.