我有一个整数列表
List<int> LI = new List<int>();
Run Code Online (Sandbox Code Playgroud)
我想检查列表中是否存在特定的数字.如果存在,则执行数据库更新,否则执行数据库插入
foreach (int IT in LI)
{
}
Run Code Online (Sandbox Code Playgroud)
我可以在foreach循环内执行此操作,或者如果不可能如何实现此操作?????
最简单的方法是:
if(LI.Contains(someIntValue))
{
// do database update
}
Run Code Online (Sandbox Code Playgroud)
这将搜索列表中的每个元素并将其与之比较someIntValue,并在找到匹配的元素后返回true,如果没有元素匹配则返回false.
现在,这是低效的,因为搜索列表的时间是线性的.如果你经常搜索你的列表,你应该将你的整数存储在一个更适合搜索的集合中,Dictionary或者HashSet两者都有恒定的时间
| 归档时间: |
|
| 查看次数: |
134 次 |
| 最近记录: |