Dart语言中的Set是无序集合类型,Set跟List都能保存一组数据,区别就是Set的元素都是唯一的。
1.初始化Set类型变量
Set支持任意类型数据,主要有下面几种方式初始化变量。
例子1:
var halogens = {'fluorine', 'chlorine', 'bromine', 'iodine', 'astatine'};
定义了Set<String>类型的Set集合,意思就是定义了String类型的集合变量,同时初始化值为上面的5个字符串。
例子2:
// 定义个空的String类型的Set
var names = <String>{};
例子3:
// 通过Set对象定义一个可以保存String类型的Set
var names = Set<String>();
2.添加Set元素
通过add函数添加一个元素
var names = Set<String>();
names.add("tizi365");
将另外一个集合类型的数据导入到Set中。
// 定义一个String类型的List数组
var titles = ["Dart语言教程", "Flutter教程"];
// 定义String类型Set
var names = Set<String>();
// 使用addAll将titles的所有元素导入到names中
names.addAll(titles);
提示:在Dart语言中,集合类型,通常指的是Set,List,Map类型的数据,他们都代表数据的集合。
3.删除Set元素
var titles = {"Dart语言教程", "Flutter教程"};
// 删除Set元素
titles.remove("Dart语言教程");
// 删除所有Set元素
titles.clear();
4.获取Set大小
通过length属性可以获取Set的元素个数
var titles = {"Dart语言教程", "Flutter教程"};
print(titles.length) // 打印Set元素个数
5.检测Set是否包含某个元素
通过contains函数,检测是否包含指定元素
var names = {"tizi", "github"}
if (names.contains("tizi")) {
print("包含元素");
}
6.遍历Set元素
var names = {"tizi", "github"}
// 循环遍历Set元素
for (var x in names) {
print(x); // 打印元素
}