Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
492 of 1492 menu
◀ ▶

Интерфейс ISet

Интерфейс ISet<T> расширяет ICollection<T> методами объединения, пересечения, сравнения и другими операциями над множествами. Его реализует, например, HashSet<T> и SortedSet<T>.

Синтаксис

ISet<T> set = new HashSet<T>();

Пример

Давайте вызвать UnionWith через переменную типа ISet<T>:

using System; using System.Collections.Generic; class Program { static void Main() { ISet<int> a = new HashSet<int> {1, 2}; HashSet<int> b = new HashSet<int> {2, 3}; a.UnionWith(b); Console.WriteLine(a.Contains(3)); Console.WriteLine(a.Count); } }

Результат выполнения кода:

True 3

Пример

Давайте проверить IsSubsetOf на SortedSet<T>:

using System; using System.Collections.Generic; class Program { static void Main() { ISet<int> small = new HashSet<int> {2, 4}; ISet<int> big = new SortedSet<int> {1, 2, 3, 4, 5}; Console.WriteLine(small.IsSubsetOf(big)); } }

Результат выполнения кода:

True

Пример

Давайте использовать Add и получить логический результат:

using System; using System.Collections.Generic; class Program { static void Main() { ISet<string> items = new HashSet<string>(); Console.WriteLine(items.Add("a")); Console.WriteLine(items.Add("a")); } }

Результат выполнения кода:

True False

Смотрите также

  • интерфейс IReadOnlySet,
    который описывает множество только для чтения
  • класс HashSet,
    который реализует ISet
  • класс SortedSet,
    который хранит элементы по порядку
  • интерфейс ICollection,
    от которого наследует ISet
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить