C#之 HashSet(临时笔记,未参考资料,请慎重)

时间:2021-01-12 19:42:03

HashSet是一个集合,类似于DataSet,但是其主要用途是用来存放同一种类型的元素(string、row、table等),如果添加的元素跟定义时初始的类型不一致,就会直接编译失败。

例如:

HashSet<string> hs=new HashSet<string>;

bool result1=hs.add("aa");//返回true

bool result2=hs.add("bb");//返回true

bool result3=hs.add(33);//直接语法不通过

又如:

DataRow dr=new DataRow();

HashSet<DataRow > hs=new HashSet<DataRow >;

bool result1=hs.add("aa");//直接语法不通过

bool result2=hs.add(dr);//返回true

如果我们想判断HashSet里面的元素是否有重复的,直接hs.count(),如果大于1,就说明有重复数据,否则就没有重复。另外,我们可以用hs.UnionWith进行distinct的数据合并。