首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么更新Dictionary内的value

2013-01-28 
如何更新Dictionary内的value?本帖最后由 qiuqingpo 于 2010-09-29 09:10:20 编辑using Systemusing Syst

如何更新Dictionary内的value?
本帖最后由 qiuqingpo 于 2010-09-29 09:10:20 编辑


using System;
using System.Collections.Generic;
using System.Text;

namespace Client
{
    class Test
    {
        private Dictionary <string,int> userlist=new Dictionary<string,int>() ;
        public Test()
        {
            userlist.Add("qiu", 178);
            if (userlist.ContainsKey("qiu"))
            {
                //如何更新这个key值为qiu的value.有没有好的方法?
                //Console.WriteLine("成功");
            }
        }
    }
}


[解决办法]
userlist["qiu"]=***
[解决办法]
userlist.Add("qiu", 444);

[解决办法]
 Dictionary <string,int> userlist=new Dictionary<string,int>() ;

                 foreach (KeyValuePair<string, int> item in userlist)
                 {
                     if(item.Key =="qiu") 
                     {
                           item.Value='newValue';
                     }
                 }
[解决办法]
引用:
引用:

userlist["qiu"]=***

试了一下确实不错.不过我还想知道有没有别的好方法.谢谢


在NET里面,我的映像中好像没有提供其它方法来赋值,就一楼的,难道不满足你吗?
[解决办法]
上面的方法简单明了 还不可以吗 你想实现什么啊
[解决办法]
两种方法供你使用,LS已经有正解了!我整理一下

 class Test
    {
        private Dictionary<string, int> userList = new Dictionary<string, int>();
        public Test()
        {
            //方法一
            userList.Add("学生", 1);


            userList["学生"] = 2;
            //方法二
            foreach (KeyValuePair<string, int> item in userList)
            {
                if (item.Key == "学生")
                {
                    item.Value = 3;
                }
            }
        }
    }


[解决办法]
Dictionary<string, int> myDct = new Dictionary<string, int>();
myDct.Add("A", 1);
myDct.Add("B", 2);
myDct.Add("C", 3);
myDct.Add("D", 4);

List<string> list = new List<string>();
list.Add("B");
list.Add("C");

foreach (string s in list)
{
    if (myDct.ContainsKey(s))
        myDct[s] += 1;
}

foreach (string key in new string[] { "A", "B" })
    {
      if (myDct.ContainsKey(key)) myDct[key] += 1;
    }

热点排行