Интерфейс IList
Интерфейс IList<T> расширяет
ICollection<T>
индексатором и методами Insert,
RemoveAt, IndexOf.
Синтаксис
T this[int index] { get; set; }
void Insert(int index, T item);
Пример
Давайте прочитаем элемент через IList:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> nums = new List<int> {1, 2, 3, 4, 5};
IList<int> list = nums;
Console.WriteLine(list[2]);
}
}
Результат выполнения кода:
3
Пример
Давайте изменим элемент:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> nums = new List<int> {1, 2, 3, 4, 5};
IList<int> list = nums;
list[0] = 10;
Console.WriteLine(string.Join(" ", nums));
}
}
Результат выполнения кода:
10 2 3 4 5
Пример
Давайте вставим элемент через IList:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> nums = new List<int> {1, 2, 4, 5};
IList<int> list = nums;
list.Insert(2, 3);
Console.WriteLine(string.Join(" ", nums));
}
}
Результат выполнения кода:
1 2 3 4 5
Пример
Давайте найдём IndexOf:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> nums = new List<int> {1, 2, 3, 4, 5};
IList<int> list = nums;
Console.WriteLine(list.IndexOf(4));
}
}
Результат выполнения кода:
3
Смотрите также
-
свойство
index,
который реализует индексатор List -
интерфейс
IReadOnlyList,
который разрешает только чтение по индексу -
интерфейс
ICollection,
который описывает базовую коллекцию -
класс
List,
который реализует IList