Что такое индексаторы (Indexers) в C#?
Этот вопрос проверяет понимание того, что такое индексаторы в C# и как они позволяют использовать объекты класса как массивы.
Короткий ответ
Индексаторы в C# позволяют объектам класса быть индексируемыми, как массивы. Они позволяют использовать синтаксис массива для доступа к элементам объекта.
Длинный ответ
Индексаторы в C# предоставляют механизм для использования объектов класса с индексами, как если бы это были массивы. Это позволяет обращаться к элементам объекта с использованием квадратных скобок, что делает код более читаемым и удобным.
Пример:
public class MyClass
{
private int[] numbers = new int[10];
public int this[int index]
{
get { return numbers[index]; }
set { numbers[index] = value; }
}
}
var myClass = new MyClass();
myClass[0] = 42; // Используем индексатор
Console.WriteLine(myClass[0]); // Выводит 42В этом примере класс MyClass использует индексатор для доступа к элементам массива numbers.