打印列表对象c#

时间:2018-11-24 15:28:07

标签: c# c#-4.0

嗨,我尝试打印对象列表,但仅打印对象名称

班级人

public class Pessoa
{

        public  int ID { get; set; }
        public  int Idade { get; set; }
        public  string Nome { get; set; }

        public  List<int> Setor { get; set; }

}

我的主班

静态void Main(string [] args)     {

    List<Pessoa> pessoas = new List<Pessoa>();

    pessoas.Add(new Pessoa
    {
        ID = 2,
        Idade = 32,
        Nome = "name",
         Setor = new List<int> { 2, 55, 32, 13, 24 }
    });

    pessoas.Add(
        new Pessoa
        {
            ID = 12,
            Idade = 24,
            Nome = "name",
             Setor = new List<int> { 2, 55, 32 }
        });

    pessoas.Add(
    new Pessoa
    {
        ID = 19,
        Idade = 29,
        Nome = "name",
          Setor = new List<int> { 2, 32 }
    });

    var teste = new Pessoa();
    foreach (var p in pessoas)
    {
        Console.WriteLine(p);


    }


    Console.ReadKey();



}

返回列表为空 返回空列表 返回空列表 返回空列表 返回空列表

1 个答案:

答案 0 :(得分:1)

以这种方式无法打印用户定义的对象。正如您在Console.WriteLine的文档中可以看到的那样,它调用要打印的对象的“ ToString()”方法,并且标准实现会打印该对象的类的名称。

如果要输出对象的内容,则必须重写ToString()方法。

示例:

   public class Pessoa {
      ....
      override ToString() {
         return $"ID = {ID}, IIdade = {Idade}, ....";
      }
   }