注意性能
根据dictionary来说,查询用foreach 不可行进行编辑删除,会翻遍内部索引
方案1》将字典索引转化为数组,进行新删编辑Value,这样原有的索引不会改变。
方案2》用for代替foreach,从最后一个到第一个数据进行处理
方案3》用字典方法 TryGetValue(TKey key, out TValue value),返回bool值,有查询到value返回true,反之false。相对有 ContainsKey+根据key索引value好的多
public Dictionary<string, string> dicFind(Dictionary<string, string> yuanben)
{
string keynumber = "4";
string stringvalue="";
bool result= yuanben.TryGetValue(keynumber,out stringvalue);//根据key寻找Value
if (result == false)
{
yuanben.Add(keynumber, "ping");//新增
}
else
{
yuanben[keynumber] = "666";//修改
}
return yuanben;
}