Class BaseIndexable[T]
Namespace NStar.Core
Assembly NStar.Core.dll
Представляет базовый абстрактный класс для всех коллекций в фреймворке .NStar, которые могут быть проиндексированы.
Сюда относятся: разнообразные списки, буферы, срез, строка и прочие.
Тем не менее, в некоторых коллекциях, технически относимых сюда (например, ParallelHashSet[T]),
на индексацию лучше забить, так как она не имеет практического смысла.
Сюда не относятся коллекции, стоящие в принципе отдельно от индексируемых,
для которых не имеют смысла практически никакие из присутствующих в этом классе методов,
например,
Stack[T],
Queue[T],
Chain и т. д.
[ComVisible(true)]
[Serializable]
public abstract class BaseIndexable[T] : IReadOnlyList[T], IReadOnlyCollection[T], IEnumerable[T], IEnumerable, IDisposable
Type Parameters
- T
-
Тип элемента данной коллекции.
Inheritance
object
BaseIndexable[T]
Implements
IReadOnlyList[T]
IReadOnlyList[T]
IReadOnlyCollection[T]
IReadOnlyCollection[T]
IEnumerable[T]
IEnumerable
IDisposable
Derived
BaseIndexable[T, TCertain]
Inherited Members
object.Equals(object, object)
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Properties
this[Index, bool]
Gets the element at the specified index in the read-only list.
public virtual T this[Index index, bool invoke = false] { get; set; }
Parameters
- index Index
-
The zero-based index of the element to get.
- invoke bool
Property Value
- T
-
The element at the specified index in the read-only list.
Length
Не нуждается в описании.
public virtual int Length { get; }
Property Value
Methods
AsMemory()
Преобразует данную коллекцию в структуру
Memory[T].
public virtual Memory[T] AsMemory()
Returns
-
Memory[T]
AsMemory(Index)
Преобразует диапазон данной коллекции от указанного индекса и до конца в структуру
Memory[T].
public virtual Memory[T] AsMemory(Index index)
Parameters
- index Index
-
Индекс начала диапазона в виде структуры Index.
Returns
-
Memory[T]
AsMemory(int)
Преобразует диапазон данной коллекции от указанного индекса и до конца в структуру
Memory[T].
public virtual Memory[T] AsMemory(int index)
Parameters
- index int
-
Индекс начала диапазона.
Returns
-
Memory[T]
AsMemory(int, int)
Преобразует диапазон данной коллекции в структуру
Memory[T].
public abstract Memory[T] AsMemory(int index, int length)
Parameters
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Memory[T]
AsMemory(Range)
Преобразует диапазон данной коллекции в структуру
Memory[T].
public virtual Memory[T] AsMemory(Range range)
Parameters
- range Range
-
Преобразуемый диапазон в виде структуры Range.
Returns
-
Memory[T]
AsSpan()
Преобразует данную коллекцию в структуру
Span[T].
public virtual Span[T] AsSpan()
Returns
-
Span[T]
AsSpan(Index)
Преобразует диапазон данной коллекции от указанного индекса и до конца в структуру
Span[T].
public virtual Span[T] AsSpan(Index index)
Parameters
- index Index
-
Индекс начала диапазона в виде структуры Index.
Returns
-
Span[T]
AsSpan(int)
Преобразует диапазон данной коллекции от указанного индекса и до конца в структуру
Span[T].
public virtual Span[T] AsSpan(int index)
Parameters
- index int
-
Индекс начала диапазона.
Returns
-
Span[T]
AsSpan(int, int)
Преобразует диапазон данной коллекции в структуру
Span[T].
public abstract Span[T] AsSpan(int index, int length)
Parameters
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Span[T]
AsSpan(Range)
Преобразует диапазон данной коллекции в структуру
Span[T].
public virtual Span[T] AsSpan(Range range)
Parameters
- range Range
-
Преобразуемый диапазон в виде структуры Range.
Returns
-
Span[T]
Contains(IEnumerable[T])
Проверяет, включает ли данная коллекция указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
Returns
-
true, если последовательность была найдена, иначе false.
Contains(IEnumerable[T], IEqualityComparer[T])
Проверяет, включает ли данная коллекция указанную последовательность
элементов, используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
true, если последовательность была найдена, иначе false.
Contains(IEnumerable[T], int)
Проверяет, включает ли диапазон данной коллекции от указанного индекса и до конца указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
true, если последовательность была найдена, иначе false.
Contains(IEnumerable[T], int, IEqualityComparer[T])
Проверяет, включает ли диапазон данной коллекции от указанного индекса и до конца указанную последовательность
элементов, используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection, int index, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
true, если последовательность была найдена, иначе false.
Contains(IEnumerable[T], int, int)
Проверяет, включает ли диапазон данной коллекции указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
true, если последовательность была найдена, иначе false.
Contains(IEnumerable[T], int, int, IEqualityComparer[T])
Проверяет, включает ли диапазон данной коллекции указанную последовательность
элементов, используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual bool Contains(IEnumerable[T] collection, int index, int length, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
true, если последовательность была найдена, иначе false.
Contains(T?)
Проверяет, включает ли данная коллекция указанный элемент.
public virtual bool Contains(T? item)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
Returns
-
true, если элемент был найден, иначе false.
Contains(T?, int)
Проверяет, включает ли диапазон данной коллекции от указанного индекса и до конца указанный элемент.
public virtual bool Contains(T? item, int index)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
Returns
-
true, если элемент был найден, иначе false.
Contains(T?, int, int)
Проверяет, включает ли диапазон данной коллекции указанный элемент.
public virtual bool Contains(T? item, int index, int length)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
true, если элемент был найден, иначе false.
ContainsAny(IEnumerable[T])
Проверяет, включает ли данная коллекция любой из указанных элементов.
public virtual bool ContainsAny(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
Returns
-
true, если какой-либо из элементов был найден, иначе false.
ContainsAny(IEnumerable[T], int)
Проверяет, включает ли диапазон данной коллекции от указанного индекса и до конца любой из указанных элементов.
public virtual bool ContainsAny(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
true, если какой-либо из элементов был найден, иначе false.
ContainsAny(IEnumerable[T], int, int)
Проверяет, включает ли диапазон данной коллекции любой из указанных элементов.
public virtual bool ContainsAny(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
true, если какой-либо из элементов был найден, иначе false.
ContainsAnyExcluding(IEnumerable[T])
Проверяет, включает ли данная коллекция любой из элементов, кроме указанных.
public virtual bool ContainsAnyExcluding(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
Returns
-
true, если какой-либо отличающийся элемент был найден,
иначе false.
ContainsAnyExcluding(IEnumerable[T], int)
Проверяет, включает ли диапазон данной коллекции от указанного индекса и до конца любой из элементов, кроме указанных.
public virtual bool ContainsAnyExcluding(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
true, если какой-либо отличающийся элемент был найден,
иначе false.
ContainsAnyExcluding(IEnumerable[T], int, int)
Проверяет, включает ли диапазон данной коллекции любой из элементов, кроме указанных.
public virtual bool ContainsAnyExcluding(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
true, если какой-либо отличающийся элемент был найден,
иначе false.
CopyTo(Array, int)
Копирует элементы данной коллекции в массив.
public virtual void CopyTo(Array array, int arrayIndex)
Parameters
- array Array
-
Целевой массив.
- arrayIndex int
-
Индекс в массиве, начиная с которого нужно вставлять данную коллекцию.
Exceptions
-
Массив должен иметь одно измерение.
-
Может появляться в разных случаях, подробнее см. текст исключения.
CopyTo(int, T[], int, int)
Копирует диапазон элементов данной коллекции в массив.
public virtual void CopyTo(int index, T[] array, int arrayIndex, int length)
Parameters
- index int
-
Индекс в данной коллекции, начиная с которого нужно брать диапазон.
- array T[]
-
Целевой массив.
- arrayIndex int
-
Индекс в массиве, начиная с которого нужно вставлять часть данной коллекции.
- length int
-
Длина диапазона.
Exceptions
-
Может появляться в разных случаях, подробнее см. текст исключения.
CopyTo(T[])
Копирует элементы данной коллекции в массив.
public virtual void CopyTo(T[] array)
Parameters
- array T[]
-
Целевой массив.
Exceptions
-
Может появляться в разных случаях, подробнее см. текст исключения.
CopyTo(T[], int)
Копирует элементы данной коллекции в массив.
public virtual void CopyTo(T[] array, int arrayIndex)
Parameters
- array T[]
-
Целевой массив.
- arrayIndex int
-
Индекс в массиве, начиная с которого нужно вставлять данную коллекцию.
Exceptions
-
Может появляться в разных случаях, подробнее см. текст исключения.
Dispose()
Уничтожает данную коллекцию, позволяя ОС освободить ресурсы.
public abstract void Dispose()
EndsWith(IEnumerable[T])
Проверяет, заканчивается ли данная коллекция указанной последовательностью элементов.
public virtual bool EndsWith(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Последовательность элементов, которой должна заканчиваться коллекция,
для которой данный метод вызывается.
Returns
-
Булева константа (true или false).
EndsWith(T?)
Проверяет, является ли указанный элемент последним в данной коллекции.
public virtual bool EndsWith(T? item)
Parameters
- item T
-
Элемент для проверки.
Returns
-
Булева константа (true или false).
Equals(IEnumerable[T]?)
Проверяет, равна ли поэлементно данная коллекция указанной последовательности.
public virtual bool Equals(IEnumerable[T]? collection)
Parameters
- collection IEnumerable[T]
-
Последовательность, которой должна быть равна коллекция,
для которой данный метод вызывается.
Returns
-
Булева константа (true или false).
Equals(IEnumerable[T]?, int, bool)
Проверяет, равен ли поэлементно диапазон данной коллекции указанной последовательности.
public virtual bool Equals(IEnumerable[T]? collection, int index, bool toEnd = false)
Parameters
- collection IEnumerable[T]
-
Последовательность, которой должен быть равен диапазон коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- toEnd bool
-
Специальный флаг, определяющий, что возвращать, если достигнут конец collection,
а в данной коллекции еще есть элементы. Если в такой ситуации этот флаг равен true,
возвращает false и наоборот.
Returns
-
Булева константа (true или false).
Equals(object?)
Determines whether the specified object is equal to the current object.
public override bool Equals(object? obj)
Parameters
- obj object
-
The object to compare with the current object.
Returns
-
true if the specified object is equal to the current object; otherwise, false.
Exists(Predicate[T])
Проверяет, есть ли в данной коллекции элемент, удовлетворяющий критериям.
public virtual bool Exists(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
true, если элемент был найден, иначе false.
Find(Predicate[T])
Ищет, есть ли в данной коллекции элемент, удовлетворяющий критериям.
public virtual T? Find(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
- T
-
Первый элемент, удовлетворяющий критериям match,
или значение по умолчанию (null, ноль и т. д.), если такой элемент не найден.
FindAll(Predicate[T])
Ищет, есть ли в данной коллекции элементы, удовлетворяющие критериям.
public virtual List[T] FindAll(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
- List[T]
-
Список элементов, удовлетворяющих критериям match.
FindIndex(int, int, Predicate[T])
Ищет, есть ли в диапазоне данной коллекции элемент, удовлетворяющий критериям.
public virtual int FindIndex(int startIndex, int length, Predicate[T] match)
Parameters
- startIndex int
-
Индекс начала.
- length int
-
Длина диапазона.
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс первого элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
FindIndex(int, Predicate[T])
Ищет, есть ли в диапазоне данной коллекции от указанного индекса и до конца элемент, удовлетворяющий критериям.
public virtual int FindIndex(int startIndex, Predicate[T] match)
Parameters
- startIndex int
-
Индекс начала.
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс первого элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
FindIndex(Predicate[T])
Ищет, есть ли в данной коллекции элемент, удовлетворяющий критериям.
public virtual int FindIndex(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс первого элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
FindLast(Predicate[T])
Ищет с конца, есть ли в данной коллекции элемент, удовлетворяющий критериям.
public virtual T? FindLast(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
- T
-
Последний элемент, удовлетворяющий критериям match,
или значение по умолчанию (null, ноль и т. д.), если такой элемент не найден.
FindLastIndex(int, int, Predicate[T])
Ищет с конца, есть ли в диапазоне данной коллекции элемент, удовлетворяющий критериям.
public virtual int FindLastIndex(int startIndex, int length, Predicate[T] match)
Parameters
- startIndex int
-
Индекс начала.
- length int
-
Длина диапазона.
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс последнего элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
FindLastIndex(int, Predicate[T])
Ищет с конца, есть ли в диапазоне данной коллекции от указанного индекса и до конца элемент, удовлетворяющий критериям.
public virtual int FindLastIndex(int startIndex, Predicate[T] match)
Parameters
- startIndex int
-
Индекс начала.
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс последнего элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
FindLastIndex(Predicate[T])
Ищет с конца, есть ли в данной коллекции элемент, удовлетворяющий критериям.
public virtual int FindLastIndex(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
Индекс последнего элемента, удовлетворяющего критериям match,
или -1, если такой элемент не найден.
ForEach(Action<T, int>)
Выполняет действие с каждым элементом данной коллекции.
public virtual void ForEach(Action<T, int> action)
Parameters
- action Action<T, int>
-
Действие (метод или лямбда-выражение), принимающее на вход не только элемент,
но и его индекс (типа int).
ForEach(Action<T, int>, int)
Выполняет действие с каждым элементом диапазона данной коллекции от указанного индекса и до конца.
public virtual void ForEach(Action<T, int> action, int index)
Parameters
- action Action<T, int>
-
Действие (метод или лямбда-выражение), принимающее на вход не только элемент,
но и его индекс (типа int).
- index int
-
Индекс начала диапазона.
ForEach(Action<T, int>, int, int)
Выполняет действие с каждым элементом диапазона данной коллекции.
public virtual void ForEach(Action<T, int> action, int index, int length)
Parameters
- action Action<T, int>
-
Действие (метод или лямбда-выражение), принимающее на вход не только элемент,
но и его индекс (типа int).
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
ForEach(Action[T])
Выполняет действие с каждым элементом данной коллекции.
public virtual void ForEach(Action[T] action)
Parameters
- action Action[T]
-
Действие (метод или лямбда-выражение).
ForEach(Action[T], int)
Выполняет действие с каждым элементом диапазона данной коллекции от указанного индекса и до конца.
public virtual void ForEach(Action[T] action, int index)
Parameters
- action Action[T]
-
Действие (метод или лямбда-выражение).
- index int
-
Индекс начала диапазона.
ForEach(Action[T], int, int)
Выполняет действие с каждым элементом диапазона данной коллекции.
public virtual void ForEach(Action[T] action, int index, int length)
Parameters
- action Action[T]
-
Действие (метод или лямбда-выражение).
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
GetEnumerator()
Returns an enumerator that iterates through the collection.
public virtual IEnumerator[T] GetEnumerator()
Returns
-
An enumerator that can be used to iterate through the collection.
GetHashCode()
Serves as the default hash function.
public override int GetHashCode()
Returns
-
A hash code for the current object.
GetSlice()
Получает срез данной коллекции (подробнее см. описание коллекции
Slice[T]).
public virtual Slice[T] GetSlice()
Returns
- Slice[T]
-
Коллекция Slice[T].
GetSlice(Index)
Получает срез данной коллекции от указанного индекса и до конца
(подробнее см. описание коллекции
Slice[T]).
public virtual Slice[T] GetSlice(Index index)
Parameters
- index Index
-
Индекс начала диапазона в виде структуры Index.
Returns
- Slice[T]
-
Коллекция Slice[T].
GetSlice(int)
Получает срез данной коллекции от указанного индекса и до конца
(подробнее см. описание коллекции
Slice[T]).
public virtual Slice[T] GetSlice(int index)
Parameters
- index int
-
Индекс начала диапазона.
Returns
- Slice[T]
-
Коллекция Slice[T].
GetSlice(int, int)
Получает срез данной коллекции (подробнее см. описание коллекции
Slice[T]).
public virtual Slice[T] GetSlice(int index, int length)
Parameters
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
- Slice[T]
-
Коллекция Slice[T].
GetSlice(Range)
Получает срез данной коллекции (подробнее см. описание коллекции
Slice[T]).
public virtual Slice[T] GetSlice(Range range)
Parameters
- range Range
-
Диапазон в виде структуры Range.
Returns
- Slice[T]
-
Коллекция Slice[T].
IndexOf(IEnumerable[T])
Ищет в данной коллекции указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], IEqualityComparer[T])
Ищет в данной коллекции указанную последовательность элементов,
используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int)
Ищет в диапазоне данной коллекции от указанного индекса и до конца указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int, IEqualityComparer[T])
Ищет в диапазоне данной коллекции от указанного индекса и до конца указанную последовательность элементов,
используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection, int index, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int, int)
Ищет в диапазоне данной коллекции указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int, int, IEqualityComparer[T])
Ищет в диапазоне данной коллекции указанную последовательность элементов,
используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь).
public virtual int IndexOf(IEnumerable[T] collection, int index, int length, IEqualityComparer[T] comparer)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int, int, IEqualityComparer[T], out int)
Ищет в диапазоне данной коллекции указанную последовательность элементов,
используя пользовательский компаратор равенства
(с помощью алгоритма Бойера-Мура - подробнее
здесь)
и возвращает в виде
out-параметра длину этой указанной последовательности, чтобы не считать ее
лишний раз (на случай, если последовательность не наследуется от интерфейсов, позволяющих легко получить длину).
public virtual int IndexOf(IEnumerable[T] collection, int index, int length, IEqualityComparer[T] comparer, out int collectionLength)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
- comparer IEqualityComparer[T]
-
Компаратор на равенство, содержащий методы Equals() и GetHashCode(),
(подробнее см. в описании интерфейса IEqualityComparer[T]).
- collectionLength int
-
Посчитанная длина collection.
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(IEnumerable[T], int, int, out int)
Ищет в диапазоне данной коллекции указанную последовательность элементов
(с помощью алгоритма Бойера-Мура - подробнее
здесь)
и возвращает в виде
out-параметра длину этой указанной последовательности, чтобы не считать ее
лишний раз (на случай, если последовательность не наследуется от интерфейсов, позволяющих легко получить длину).
public virtual int IndexOf(IEnumerable[T] collection, int index, int length, out int collectionLength)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
- collectionLength int
-
Посчитанная длина collection.
Returns
-
Индекс начала первого вхождения collection,
или -1, если последовательность не была найдена.
IndexOf(T)
Ищет в данной коллекции указанный элемент.
public virtual int IndexOf(T item)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
Returns
-
Индекс первого вхождения элемента, или -1, если такой элемент не был найден.
IndexOf(T, int)
Ищет в диапазоне данной коллекции от указанного индекса и до конца указанный элемент.
public virtual int IndexOf(T item, int index)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс первого вхождения элемента, или -1, если такой элемент не был найден.
IndexOf(T, int, int)
Ищет в диапазоне данной коллекции указанный элемент.
public virtual int IndexOf(T item, int index, int length)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс первого вхождения элемента, или -1, если такой элемент не был найден.
IndexOfAny(IEnumerable[T])
Ищет в данной коллекции любой из указанных элементов.
public virtual int IndexOfAny(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
Returns
-
Индекс первого вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
IndexOfAny(IEnumerable[T], int)
Ищет в диапазоне данной коллекции от указанного индекса и до конца любой из указанных элементов.
public virtual int IndexOfAny(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс первого вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
IndexOfAny(IEnumerable[T], int, int)
Ищет в диапазоне данной коллекции любой из указанных элементов.
public virtual int IndexOfAny(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс первого вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
IndexOfAnyExcluding(IEnumerable[T])
Ищет в данной коллекции любой из элементов, кроме указанных.
public virtual int IndexOfAnyExcluding(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
Returns
-
Индекс первого вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
IndexOfAnyExcluding(IEnumerable[T], int)
Ищет в диапазоне данной коллекции от указанного индекса и до конца любой из элементов, кроме указанных.
public virtual int IndexOfAnyExcluding(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс первого вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
IndexOfAnyExcluding(IEnumerable[T], int, int)
Ищет в диапазоне данной коллекции любой из элементов, кроме указанных.
public virtual int IndexOfAnyExcluding(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс первого вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
LastIndexOf(IEnumerable[T])
Ищет с конца в данной коллекции указанную последовательность элементов
(к сожалению, пока что "наивным" способом, алгоритм Бойера-Мура с конца пока не реализован).
public virtual int LastIndexOf(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
Returns
-
Индекс начала последнего вхождения collection,
или -1, если последовательность не была найдена.
LastIndexOf(IEnumerable[T], int)
Ищет с конца в диапазоне данной коллекции от указанного индекса и до конца указанную последовательность элементов
(к сожалению, пока что "наивным" способом, алгоритм Бойера-Мура с конца пока не реализован).
public virtual int LastIndexOf(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс начала последнего вхождения collection,
или -1, если последовательность не была найдена.
LastIndexOf(IEnumerable[T], int, int)
Ищет с конца в диапазоне данной коллекции указанную последовательность элементов
(к сожалению, пока что "наивным" способом, алгоритм Бойера-Мура с конца пока не реализован).
public virtual int LastIndexOf(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс начала последнего вхождения collection,
или -1, если последовательность не была найдена.
LastIndexOf(IEnumerable[T], int, int, out int)
Ищет с конца в диапазоне данной коллекции указанную последовательность элементов,
(к сожалению, пока что "наивным" способом, алгоритм Бойера-Мура с конца пока не реализован)
и возвращает в виде
out-параметра длину этой указанной последовательности, чтобы не считать ее
лишний раз (на случай, если последовательность не наследуется от интерфейсов, позволяющих легко получить длину).
public virtual int LastIndexOf(IEnumerable[T] collection, int index, int length, out int collectionLength)
Parameters
- collection IEnumerable[T]
-
Последовательность для поиска в коллекции, для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
- collectionLength int
-
Посчитанная длина collection.
Returns
-
Индекс начала последнего вхождения collection,
или -1, если последовательность не была найдена.
LastIndexOf(T)
Ищет с конца в данной коллекции указанный элемент.
public virtual int LastIndexOf(T item)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
Returns
-
Индекс последнего вхождения элемента, или -1, если такой элемент не был найден.
LastIndexOf(T, int)
Ищет с конца в диапазоне данной коллекции от указанного индекса и до конца указанный элемент.
public virtual int LastIndexOf(T item, int index)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс последнего вхождения элемента, или -1, если такой элемент не был найден.
LastIndexOf(T, int, int)
Ищет с конца в диапазоне данной коллекции указанный элемент.
public virtual int LastIndexOf(T item, int index, int length)
Parameters
- item T
-
Элемент для поиска в данной коллекции.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс последнего вхождения элемента, или -1, если такой элемент не был найден.
LastIndexOfAny(IEnumerable[T])
Ищет с конца в данной коллекции любой из указанных элементов.
public virtual int LastIndexOfAny(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
Returns
-
Индекс последнего вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
LastIndexOfAny(IEnumerable[T], int)
Ищет с конца в диапазоне данной коллекции от указанного индекса и до конца любой из указанных элементов.
public virtual int LastIndexOfAny(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс последнего вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
LastIndexOfAny(IEnumerable[T], int, int)
Ищет с конца в диапазоне данной коллекции любой из указанных элементов.
public virtual int LastIndexOfAny(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого из них в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс последнего вхождения какого-либо из элементов, или -1, если такой элемент не был найден.
LastIndexOfAnyExcluding(IEnumerable[T])
Ищет с конца в данной коллекции любой из элементов, кроме указанных.
public virtual int LastIndexOfAnyExcluding(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
Returns
-
Индекс последнего вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
LastIndexOfAnyExcluding(IEnumerable[T], int)
Ищет с конца в диапазоне данной коллекции от указанного индекса и до конца любой из элементов, кроме указанных.
public virtual int LastIndexOfAnyExcluding(IEnumerable[T] collection, int index)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
Returns
-
Индекс последнего вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
LastIndexOfAnyExcluding(IEnumerable[T], int, int)
Ищет с конца в диапазоне данной коллекции любой из элементов, кроме указанных.
public virtual int LastIndexOfAnyExcluding(IEnumerable[T] collection, int index, int length)
Parameters
- collection IEnumerable[T]
-
Коллекция элементов для поиска любого, кроме них, в коллекции,
для которой данный метод вызывается.
- index int
-
Индекс начала диапазона.
- length int
-
Длина диапазона.
Returns
-
Индекс последнего вхождения какого-либо из отличающихся элементов,
или -1, если такой элемент не был найден.
Random()
Получает случайный элемент коллекции, используя внутренний рандомизатор фреймворка.
public virtual T Random()
Returns
- T
-
Случайный элемент коллекции.
Random(Random)
Получает случайный элемент коллекции, используя указанный рандомизатор.
public virtual T Random(Random randomObj)
Parameters
- randomObj Random
-
Рандомизатор, используемый для получения номера элемента.
Returns
- T
-
Случайный элемент коллекции.
Skip(int)
Bypasses a specified number of elements in a sequence and then returns the remaining elements.
public virtual Slice[T] Skip(int length)
Parameters
- length int
Returns
- Slice[T]
-
An IEnumerable[T] that contains the elements that occur after the specified index in the input sequence.
Remarks
Возвращает коллекцию типа
Slice[T].
Exceptions
-
source is null.
SkipLast(int)
Returns a new enumerable collection that contains the elements from source with the last count elements of the source collection omitted.
public virtual Slice[T] SkipLast(int length)
Parameters
- length int
Returns
- Slice[T]
-
A new enumerable collection that contains the elements from source minus count elements from the end of the collection.
Remarks
Возвращает коллекцию типа
Slice[T].
Exceptions
-
source is null.
SkipWhile(Func<T, bool>)
Пропускает стоящие в начале элементы коллекции, удовлетворяющие критериям, после чего возвращает остаток коллекции.
public virtual Slice[T] SkipWhile(Func<T, bool> function)
Parameters
- function Func<T, bool>
-
Критерии для проверки (функция или лямбда-выражение от элемента,
возвращающие bool).
Returns
- Slice[T]
-
Коллекция Slice[T].
SkipWhile(Func<T, int, bool>)
Пропускает стоящие в начале элементы коллекции, удовлетворяющие критериям, после чего возвращает остаток коллекции.
public virtual Slice[T] SkipWhile(Func<T, int, bool> function)
Parameters
- function Func<T, int, bool>
-
Критерии для проверки (функция или лямбда-выражение как от элемента, так и от его индекса,
возвращающие bool).
Returns
- Slice[T]
-
Коллекция Slice[T].
StartsWith(IEnumerable[T])
Проверяет, начинается ли данная коллекция указанной последовательностью элементов.
public virtual bool StartsWith(IEnumerable[T] collection)
Parameters
- collection IEnumerable[T]
-
Последовательность элементов, которой должна начинаться коллекция,
для которой данный метод вызывается.
Returns
-
Булева константа (true или false).
StartsWith(T?)
Проверяет, является ли указанный элемент первым в данной коллекции.
public virtual bool StartsWith(T? item)
Parameters
- item T
-
Элемент для проверки.
Returns
-
Булева константа (true или false).
Take(int)
Returns a specified number of contiguous elements from the start of a sequence.
public virtual Slice[T] Take(int length)
Parameters
- length int
Returns
- Slice[T]
-
An IEnumerable[T] that contains the specified number of elements from the start of the input sequence.
Remarks
Возвращает коллекцию типа
Slice[T].
Exceptions
-
source is null.
TakeLast(int)
Returns a new enumerable collection that contains the last count elements from source.
public virtual Slice[T] TakeLast(int length)
Parameters
- length int
Returns
- Slice[T]
-
A new enumerable collection that contains the last count elements from source.
Remarks
Возвращает коллекцию типа
Slice[T].
Exceptions
-
source is null.
TakeWhile(Func<T, bool>)
Возвращает стоящие в начале элементы коллекции, удовлетворяющие критериям, отбрасывая остаток коллекции.
public virtual Slice[T] TakeWhile(Func<T, bool> function)
Parameters
- function Func<T, bool>
-
Критерии для проверки (функция или лямбда-выражение от элемента,
возвращающие bool).
Returns
- Slice[T]
-
Коллекция Slice[T].
TakeWhile(Func<T, int, bool>)
Возвращает стоящие в начале элементы коллекции, удовлетворяющие критериям, отбрасывая остаток коллекции.
public virtual Slice[T] TakeWhile(Func<T, int, bool> function)
Parameters
- function Func<T, int, bool>
-
Критерии для проверки (функция или лямбда-выражение как от элемента, так и от его индекса,
возвращающие bool).
Returns
- Slice[T]
-
Коллекция Slice[T].
ToArray()
Конвертирует коллекцию в массив.
public virtual T[] ToArray()
Returns
- T[]
-
Массив, содержащий все элементы данной коллекции.
TrueForAll(Predicate[T])
Проверяет, что все элементы данной коллекции удовлетворяют заданным критериям.
public virtual bool TrueForAll(Predicate[T] match)
Parameters
- match Predicate[T]
-
Предикат, задающий критерии (подробнее см. в описании Predicate[T]).
Returns
-
true, если все элементы удовлетворяют критериям match,
иначе false.