代码之家  ›  专栏  ›  技术社区  ›  chamara

列表有问题

  •  0
  • chamara  · 技术社区  · 14 年前

    我有一个整数列表

     List<int> LI = new List<int>();
    

    foreach (int IT in LI)
            {
    
            }
    

    我可以在foreach循环中做这个吗?如果不可能的话,怎么做?????

    2 回复  |  直到 14 年前
        1
  •  5
  •   Alan    14 年前

    最简单的方法是:

    if(LI.Contains(someIntValue))
    {
      // do database update
    }
    

    它将搜索列表中的每个元素并将其与 someIntValue ,并在找到匹配的元素后返回true,如果没有匹配的元素,则返回false。

    现在,这是低效的,因为搜索列表的时间是线性的。如果您一直在搜索列表,那么您可能应该将整数存储在更适合搜索的集合中,例如 Dictionary HashSet

        2
  •  2
  •   Rony    14 年前
    public void InsertUpdateNumber(int i){
    
        if(LI.Any(li => li == i))
            //do update
        else
            //do insert
    
    }