一架梯子,一头程序猿,仰望星空!

Dart Set集合


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); // 打印元素
}