C#类似list<map>,如何循环构造?
答案:1 悬赏:70 手机版
解决时间 2021-11-25 00:31
- 提问者网友:
- 2021-11-24 11:43
C#类似list<map>,如何循环构造?
最佳答案
- 五星知识达人网友:孤独的牧羊人
- 2021-11-24 12:49
public class MultMap
{
IDictionary> dictionary = new Dictionary>();
public MultMap() { }
public void Add(string key, V item)
{
List list;
if (this.dictionary.TryGetValue(key,out list))
{
list.Add(item);
}
else
{
list = new List();
list.Add(item);
this.dictionary[key] = list;
}
}
public IEnumerable Keys
{
get { return this.dictionary.Keys; }
}
public List this[string key]
{
get
{
List list;
if (!this.dictionary.TryGetValue(key,out list))
{
list = new List();
this.dictionary[key] = list;
}
return list;
}
}
}
// 测试
static void Main(string[] args)
{
MultMap map = new MultMap();
// 构造集合映射
map.Add("1年级", "1班");
map.Add("1年级", "2班");
map.Add("2年级", "3班");
map.Add("2年级", "4班");
foreach (var key in map.Keys)
{
Console.WriteLine(key);
foreach (var item in map[key])
{
Console.WriteLine(" "+item);
}
}
}
{
IDictionary
public MultMap() { }
public void Add(string key, V item)
{
List
if (this.dictionary.TryGetValue(key,out list))
{
list.Add(item);
}
else
{
list = new List
list.Add(item);
this.dictionary[key] = list;
}
}
public IEnumerable
{
get { return this.dictionary.Keys; }
}
public List
{
get
{
List
if (!this.dictionary.TryGetValue(key,out list))
{
list = new List
this.dictionary[key] = list;
}
return list;
}
}
}
// 测试
static void Main(string[] args)
{
MultMap
// 构造集合映射
map.Add("1年级", "1班");
map.Add("1年级", "2班");
map.Add("2年级", "3班");
map.Add("2年级", "4班");
foreach (var key in map.Keys)
{
Console.WriteLine(key);
foreach (var item in map[key])
{
Console.WriteLine(" "+item);
}
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯