ICollection Интерфейс

Определение

Определяет размер, перечислители и методы синхронизации для всех неуниверсальных коллекций.Defines size, enumerators, and synchronization methods for all nongeneric collections.

public interface class ICollection : System::Collections::IEnumerable
public interface ICollection : System.Collections.IEnumerable
[System.Runtime.InteropServices.ComVisible(true)]
public interface ICollection : System.Collections.IEnumerable
type ICollection = interface
    interface IEnumerable
Public Interface ICollection
Implements IEnumerable
Производный
Атрибуты
Реализации

Комментарии

Интерфейс ICollection является базовым интерфейсом для классов в пространстве имен System.Collections.The ICollection interface is the base interface for classes in the System.Collections namespace. Его универсальным эквивалентом является интерфейс System.Collections.Generic.ICollection<T>.Its generic equivalent is the System.Collections.Generic.ICollection<T> interface.

Интерфейс ICollection расширяет IEnumerable; IDictionary и IList являются более специализированными интерфейсами, расширяющими ICollection.The ICollection interface extends IEnumerable; IDictionary and IList are more specialized interfaces that extend ICollection. IDictionary реализация — это коллекция пар "ключ-значение", например класс Hashtable.An IDictionary implementation is a collection of key/value pairs, like the Hashtable class. IListная реализация — это коллекция значений, к которой можно получить доступ по индексу, например классу ArrayList.An IList implementation is a collection of values and its members can be accessed by index, like the ArrayList class.

Некоторые коллекции, которые ограничивают доступ к своим элементам, например класс Queue и класс Stack, непосредственно реализуют интерфейс ICollection.Some collections that limit access to their elements, such as the Queue class and the Stack class, directly implement the ICollection interface.

Если ни интерфейс IDictionary, ни интерфейс IList не соответствуют требованиям требуемой коллекции, создайте новый класс коллекции из интерфейса ICollection, чтобы обеспечить большую гибкость.If neither the IDictionary interface nor the IList interface meet the requirements of the required collection, derive the new collection class from the ICollection interface instead for more flexibility.

Сведения об универсальной версии этого интерфейса см. в разделе System.Collections.Generic.ICollection<T>.For the generic version of this interface, see System.Collections.Generic.ICollection<T>.

Свойства

Count

Получает количество элементов, содержащихся в ICollection.Gets the number of elements contained in the ICollection.

IsSynchronized

Возвращает значение, указывающее, является ли доступ к коллекции ICollection синхронизированным (потокобезопасным).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

SyncRoot

Возвращает объект, который может быть использован для синхронизации доступа к коллекции ICollection.Gets an object that can be used to synchronize access to the ICollection.

Методы

CopyTo(Array, Int32)

Копирует элементы коллекции ICollection в массив Array, начиная с указанного индекса массива Array.Copies the elements of the ICollection to an Array, starting at a particular Array index.

GetEnumerator()

Возвращает перечислитель для прохода по коллекции.Returns an enumerator that iterates through a collection.

(Унаследовано от IEnumerable)

Методы расширения

Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.Enables parallelization of a query.

AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.Converts an IEnumerable to an IQueryable.

Применяется к

Дополнительно