现在的位置: 首页 > 综合 > 正文

给hashtable元素重新赋值

2014年02月23日 ⁄ 综合 ⁄ 共 407字 ⁄ 字号 评论关闭
            Hashtable ta = new Hashtable();
            ta.Add('1', 'w');
            ta.Add('2', 'm');
            ta.Add('3', 'f');

            Hashtable tb = new Hashtable();
            tb.Add('1', 'w');
            tb.Add('2', 'm');
            tb.Add('3', 'm');
            //最初想法是遍历ta从而对其值改变,结果提示“de是一个foreach迭代变量,无法修改其成员”,因为foreach只能处理固定状态不变的集合
            foreach (DictionaryEntry de in ta)
            {
                if (de.Key.ToString().Equals("3"))
                {
                    de.Value = 'm';
                }
            }
            //办法一:通过移除添加的方法赋值
            ta.Remove('3');
            ta.Add('3', 'm');
            //办法二:通过重新定义一个hashtable然后通过构造方法重新赋值过去
            ta = new Hashtable(tb);

抱歉!评论已关闭.