项目中使用List的Contains判断当前对象中是否已使用,后来图纸数据量大的时候发现效率很慢。
后使用HashSet的Contains代替,执行效率得到了明显的提升。
下面进行数据实验,随机创建1千万个字符串,判断集合中是否存在某个字符串对象:
List:
Contains-84.0568ms,Exists-70.0475ms,Where-190.1258ms,FindAll-141.094ms
HashSet:
Contains-1.0007ms,
使用Add的返回结果判断,用时接近0ms。