hashtable ht=new hashtable();
ht.add("0",object);
foreach (DictionaryEntry v in ht)
        {
           满足一个条件时;
           ht[v]=赋值;
        }就是遍历哈希表的值,满足一个条件,更改当前值该怎么做

解决方案 »

  1.   

    refer:http://bbs.csdn.net/topics/350168403
      

  2.   


            Hashtable ht = new Hashtable();
            ht.Add("0", "123");
            ht.Add("1", "222");
            ArrayList keyList = new ArrayList(ht.Keys);
            for (int i = 0; i < ht.Count; i++)
            {
                if (keyList[i] == "0")
                    ht[keyList[i]] = "456";
            }
      

  3.   


            Hashtable ht = new Hashtable();
            ht.Add("0", "123");
            ht.Add("1", "222");
            ArrayList keyList = new ArrayList(ht.Keys);
            for (int i = 0; i < ht.Count; i++)
            {
                if (ht[keyList[i]] == "123")
                    ht[keyList[i]] = "456";
            }
      

  4.   

    有没有办法在遍历时修改,因为程序需要遍历哈希表,但是改了当前后提示已经修改无法再遍历
    你要搞清楚,for是可以修改里面的内容,但foreach遍历就不行,因为修改后它是另一个新的了,所以不能遍历了,它是能修改,但改后不能再使用当前遍历了