在C#中使用List打印类名

时间:2018-01-07 00:38:33

标签: c# list object

我是来自C ++的C#新手

我目前正在建立卷烟库存管理系统,并且我创建了一个单独的列表来存储不同的品牌。

当我将带有标题和MaxInventory的Cigarette对象添加到列表中时,我打印出来的输出是project.className

如何打印程序以控制列表中存储的实际数据。我需要查看目前列表中的品牌和卷烟数量的报告。

        Cigarette marbLight = new Cigarette("Light", 6);
        Cigarette marbRed = new Cigarette("Red", 6);

        List<Cigarette> marlboro = new List<Cigarette>()
        {
           marbLight, marbRed
        };

        marlboro.ForEach(Console.WriteLine);

输出:

        InventoryManagement.Cigarette

        InventoryManagement.Cigarette

所需的输出将是marbLight和marbRed的内容

提前致谢!

2 个答案:

答案 0 :(得分:0)

Console.WriteLine会调用ToString传递给它的内容。您可以在Cigarette课程中覆盖它。

public override string ToString()
{
    return // whatever you want here
}

答案 1 :(得分:0)

正如另一个人所说,你必须覆盖你的Cigarette课程中的ToString方法。另一种语法是

// and your other variables you want to show
public override string ToString() => String.Format("Cigarette contents: {0}", contents);