如何显示对象列表的内容
本文关键字:列表 对象 何显示 显示 | 更新日期: 2023-09-27 18:28:03
我是新手,所以越简单越好。我创建了一个类,其中包含项目的详细信息,如项目名称、价格和描述。我创建了一个构造函数,这样我就可以在创建时初始化对象。
class Item
{
string itemName;
double price;
string description;
public Item(string itemName, double price, string description)
{
this.itemName = itemName;
this.price = price;
this.description = description;
}
}
在主类中,我创建了对象的List
和该类的两个对象。然后我在List
中添加了这两个对象。如何显示每个对象及其值?我试着用前臂,但不知道怎么用。
static void Main(string[] args)
{
Item item1 = new Item("Ball", 9.99, "This is a ball");
Item item2 = new Item("Toy Car", 20.00, "This is a toy car");
List<Item> items = new List<Item>();
items.Add(item1);
items.Add(item2);
foreach (Item s in items)
{
Console.WriteLine(s);
}
}
类似于公共字段的内容:
foreach (Item s in items)
{
Console.WriteLine("{0} {1} {2}", s.itemName, s.price, s.description);
}
或者您可以覆盖ToString()方法:
class Item
{
/// your code
public override string ToString()
{
return string.Format("{0} {1} {2}", itemName, price, description);
// or in C# 6 in Visual Studio 2015:
// return $"{itemName} {price} {description}";
}
只需覆盖ToString
即可获得所需的字符串输出。
public override string ToString()
{
return string.Format("{0}{1}{2}", itemName, price, description);
}
您可以为此目的重写ToString
方法,如下所示:
public override string ToString()
{
return string.Format("itemName = {0} , price = {1} , description = {2}", itemName, price, description);
}
或者更好的字符串插值如下(c#6):
public override string ToString()
{
return $"itemName = {itemName} , price = {price} , description = {description}";
}