Dart笔记(9):Set

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hxl517116279/article/details/88410203

声明

Set 是一个元素唯一的无序队列

松散

 var a = new Set();
 a.add('java');
 a.add('php');
 a.add('python');
 a.add('java');
 a.add('sql');
 a.add('swift');
 a.add('dart');

强类型 

 var b = new Set<String>();
 b.addAll(['dart', 'c#', 'j#', 'e#']);

基本属性

名称 说明
isEmpty 是否为空
isNotEmpty 是否不为空
first 第一个
last 最后一个
length 个数

常用方法

名称 说明
addAll 添加
contains 查询单个
containsAll 查询多个
difference 集合不同
intersection 交集
union 联合
lookup 按对象查询到返回对象
remove 删除单个
removeAll 删除多个
clear 清空
firstWhere 按条件正向查询
lastWhere 按条件反向查询
removeWhere 按条件删除
retainAll 只保留几个
retainWhere 按条件只保留几个

 

 b.addAll(['dart', 'c#', 'j#', 'e#']);
 print(b.contains('dart'));
 print(b.containsAll(['dart', 'swift']));
 print('b => $b');
 print(a.difference(b));//返回a有b没有的set,补集
 print(a.intersection(b));//a和b都有的set,交集
 print(b.lookup('dart'));
 print(b.union(a));//并集
 b.remove('dart');
 b.removeAll(['dart','c#']);
 b.clear();
 print(b.firstWhere((it) => it == 'c#'));
 print(b.lastWhere((it) => it == 'c#'));
 b.removeWhere((it) => it == 'c#');
 b.retainAll(['e#']);
 b.retainWhere((it) => it == 'e#');
 b.retainWhere((it) {
   bool ret = it == 'e#';
   return ret;
 });

猜你喜欢

转载自blog.csdn.net/hxl517116279/article/details/88410203
今日推荐