Set 是一个无序的、元素唯一的集合,无法通过 Set[index] 的方式取值
声明方式
(1)、字面量:用大括号
(2)、构造函数:通过 Set() 创建一个空的集合,再往里面添加元素
// 字面量
var subjects = {'dart', 'flutter'};
print(subjects); // {dart, flutter}
Set<int> nums = <int>{1, 2, 3};
print(nums); // {1, 2, 3}
// 构造函数
Set fruits = new Set();
fruits.add('apple');
fruits.add('banana');
print(fruits); // {apple, banana}
属性
(1)、length:int,只读,返回集合内容的长度
(2)、isEmpty/isNotEmpty:bool,只读,判断集合是否为空/至少包含一个元素
(3)、first/last:E,只读,返回集合的第一/最后一个元素
(4)、single:E,只读,检查集合是否只有一个元素并返回该元素
// length, first, last
print(fruits.length); // 2
print(fruits.first); // apple
print(fruits.last); // banana
// isEmpty, isNotEmpty
print(fruits.isEmpty); // false
print(fruits.isNotEmpty); // true
// single
var singleSet = {'unique'};
print(singleSet.single); // unique
方法
(1)、toList({bool growable = true}) → List
:把集合转成一个List
(2)、toSet() → Set :去掉重复的元素
(3)、add(E value) → bool :添加一个元素
(4)、addAll(Iterable elements) → void :添加多个元素
(5)、contains(Object? value) → bool :判断是否包含某个元素
(6)、remove(Object? value) → bool :删除某一个元素
(7)、intersection(Set