我经常需要使用 HashMap,其值为集合。在C#中,它是IDictionary<TKey,IEnumerable<TValue>>
。
我也有一个很好的“添加”扩展方法:
public static class DictionaryExtensionMethods
{
public static void ExtendWith<TKey, TValue>(this IDictionary<TKey, IEnumerable<TValue>> dict, TKey key, TValue item)
{
IEnumerable<TValue> items;
dict[key] = (items = dict.ValueOrDefault(key)) != null ? items.Union(new[] { item }) : new[] { item };
}
}
这个数据结构应该命名吗?设计模式都是关于定义和命名程序员的民间传说,或者我们通常反复做的事情......
命名这个人怎么样?这根本不是一个好主意吗?如果是这样,你会建议什么名字?