繁体   English   中英

用List <>覆盖ToString()方法

[英]Override ToString() method with List<>

到目前为止我尝试过的是:

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 <>值返回给用户

谢谢,谢谢。

由于您声明已经为单个列表项覆盖了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

这里的例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM