到目前为止我尝试过:
private List<Item> item = new List<Item>();
public List<Item> Item { get; set; } //Provide Access to List item
public Inventory() // Default constructor made to initialize default List<> value
{
Item = new List<Item>()
{
new Item("iPod"),
new Item("Samsung"),
new Item("Motorolla"),
new Item("Nokia")
};
}
override String ToString() {
return ...?
}
如何在我的类中实现覆盖ToString()方法,该方法返回默认的List&lt;&gt;给用户的价值
谢谢,谢谢。
答案 0 :(得分:3)
由于您声明您已经覆盖了单个列表项的ToString()
方法,因此您可以执行以下操作:
public override string ToString()
{
return string.Join(", ", item);
}
因此,假设你的Item的ToString()方法只返回你传入的字符串来创建它,你最终会得到一个这样的字符串:iPod, Samsung, Motorola, Nokia
。
如果您的列表可能会增长很多,并且您只想要预览,那么您可以从前5个项目中构建字符串,如下所示:
public override string ToString()
{
return string.Join(", ", item.Take(5));
}
顺便说一句,我建议您调用Item
属性Items
,因为它是一个集合,而不是单个项目。
示例here。