这是把一个dictionary里面的数据转换到另一个dictionary,改变里面数据在dictionary里面的存放方式
public Dictionary<string, Dictionary<string, string>> ConvertDictToDict1(Dictionary<string, string> dict)
{
Dictionary<string, Dictionary<string, string>> dict1 = new Dictionary<string, Dictionary<string, string>>();
// 遍历原始字典dict中的每一对键值对
foreach (KeyValuePair<string, string> kvp in dict)
{
string name = kvp.Key;
string value = kvp.Value;
// 拆分value中的connection和threadname
string[] arr = value.Split('#');
string connection = arr[0];
string threadname = arr[1];
// 如果dict1中已经包含对应的threadname,则取出对应字典来更新
if (dict1.ContainsKey(threadname))
{
Dictionary<string, string> dict_1 = dict1[threadname];
dict_1.Add(name, connection);
}
// 如果dict1中不包含对应的threadname,则创建新字典并添加
else
{
Dictionary<string, string> dict_1 = new Dictionary<string, string>();
dict_1.Add(name, connection);
dict1.Add(threadname, dict_1);
}
}
return dict1;
}
上面这个方法中
if (dict1.ContainsKey(threadname)) //如果dict1包含key threadname
{
Dictionary<string, string> dict_1 = dict1[threadname]; 这2句看不懂,谁给解释下
dict_1.Add(name, connection);
}
这段代码是做什么的