如何使用字典制作具有唯一值的列表(多吨模式)
本文关键字:列表 模式 唯一 字典 何使用 | 更新日期: 2023-09-27 18:37:13
我需要制作这个只保存唯一值的magazine_list,并使用字典和多吨模式来完成。
List 不能有两个名称和价格相同的对象。
我在 c# 中只发现了一个多吨模式的示例,它并没有解决我的问题。
这是我已有的代码的简化版本,但这些是该问题最重要的事情。
public class Product
{
string name;
int price;
}
public class Coffee : Product
{
public Coffee(string _name, int _price)
{
name = _name;
price = _price;
}
}
public class Tea : Product
{
public Tea(string _name, int _price)
{
name = _name;
price = _price;
}
}
public class Magazine
{
List<Product> magazine_list;
public Magazine()
{
List<Product> magazine_list = new List<Product>();
}
public void add(Product p)
{
magazine_list.Add(p);
}
}
为什么不把杂志做成字典,关键是产品名称。
public class Magazine : Dictionary<string, Product>
{
public void Add(Product p)
{
base[p.name] = p;
}
}
您可以使用
的是一个包含string
标识符和hashset
的自定义类。默认情况下,哈希集将确保唯一性。