Тип Set
Тип Set<E> обозначает набор уникальных
элементов типа E. Одинаковое значение
хранится в наборе один раз. Литерал набора
записывается в фигурных скобках, но тип элементов
нужно указать: иначе {} будет картой,
а не набором. Литерал <int>{1, 2} или
переменная Set<int> задают набор.
Порядок литерала сохраняется. Тип Set
является подтипом Iterable.
Синтаксис
Set<int> name = {1, 2, 3};
Set<int> name = <int>{1, 2, 3};
Пример
Давайте создадим набор и повторим число 2.
В наборе оно останется один раз:
void main()
{
Set<int> res = {1, 2, 2, 3};
print(res);
print(res.length);
}
Результат выполнения кода:
{1, 2, 3}
3
Пример
Давайте проверим, есть ли в наборе строка:
void main()
{
Set<String> res = {'a', 'b', 'c'};
print(res.contains('b'));
print(res.contains('d'));
}
Результат выполнения кода:
true
false
Пример
Давайте запишем пустой набор через параметр типа. Без него пустые фигурные скобки были бы картой:
void main()
{
Set<int> res = <int>{};
res.add(5);
print(res);
}
Результат выполнения кода:
{5}