Set
•set1.difference(set2):返回set1集合里有但set2里没有的元素集合
•set1.intersection(set2):返回set1和set2的交集
•set1.union(set2):返回set1和set2的并集
•set1.retainAll():set1只保留某些元素(要保留的元素要在原set中存在)
set.dart
void main(){
/// ---------------------------------Sets集合:Set--------------------------------
print('-----------------------Sets------------------------');
//6. Set无重复列表
var dynamicSet = Set();
dynamicSet.add('aaaaa');
dynamicSet.add('flutter');
dynamicSet.add(1);
dynamicSet.add(1);
print('dynamicSet :${dynamicSet}'); // 输出 dynamicSet :{aaaaa, flutter, 1}
//常用属性与list类似
//常用方法 增删改查与list类似
var set1 = {'aaaaa', 'flutter'};
print('set1 :${set1}'); // 输出 set1 :{aaaaa, flutter}
var set2 = {'aaaaa', 'damon', 'dart'};
print('set2 :${set2}'); // 输出 set2 :{aaaaa, damon, dart}
var difference12 = set1.difference(set2);
var difference21 = set2.difference(set1);
print('set1 difference set2 :${difference12}'); //返回set1集合里有但set2里没有的元素集合 输出 set1 difference set2 :{flutter}
print('set2 difference set1 :${difference21}'); //返回set2集合里有但set1里没有的元素集合 输出 set2 difference set1 :{damon, dart}
var intersection = set1.intersection(set2);
print('set1 set2交集 :${intersection}'); //返回set1和set2的交集 输出 set1 set2交集 :{aaaaa}
var union = set1.union(set2);
print('set1 set2并集 :${union}'); //返回set1和set2的并集 输出 set1 set2并集 :{aaaaa, flutter, damon, dart}
set2.retainAll(['aaaaa', 'flutter']); //只保留(要保留的元素要在原set中存在) 输出 set2只保留aaaaa flutter :{aaaaa}
print('set2只保留aaaaa flutter :${set2}');
print('-----------------------Sets------------------------');
}
输出:
D:\flutter\bin\cache\dart-sdk\bin\dart.exe --enable-asserts --enable-vm-service:13394 D:\Code\Flutter\FlutterHello\flutter_app\lib\set.dart
lib/set.dart: Warning: Interpreting this as package URI, 'package:flutterapp/set.dart'.
Observatory listening on http://127.0.0.1:13395/cK5Bl72_rsc=/
-----------------------Sets------------------------
dynamicSet :{aaaaa, flutter, 1}
set1 :{aaaaa, flutter}
set2 :{aaaaa, damon, dart}
set1 difference set2 :{flutter}
set2 difference set1 :{damon, dart}
set1 set2交集 :{aaaaa}
set1 set2并集 :{aaaaa, flutter, damon, dart}
set2只保留aaaaa flutter :{aaaaa}
-----------------------Sets------------------------
Process finished with exit code 0