C# 如何在c中返回对象数组#

C# 如何在c中返回对象数组#,c#,arrays,object,C#,Arrays,Object,我有两个类,Program(main类)和Driver。我试图做的是允许用户通过命令行创建驱动程序,但是我似乎无法打印出数组。我是c#新手,编程不确定这是最好的解决方法,所以任何想法都会有所帮助。谢谢 主类 public class Program { static void Main(string[] args) { List<Driver> MyDriver = new List<Driver>();

我有两个类,Program(main类)和Driver。我试图做的是允许用户通过命令行创建驱动程序,但是我似乎无法打印出数组。我是c#新手,编程不确定这是最好的解决方法,所以任何想法都会有所帮助。谢谢

主类

public class Program    
{           
    static void Main(string[] args)
    {
        List<Driver> MyDriver = new List<Driver>();
        for (var a = 0; a < 5; a++)
        {    
            Driver driver = new Driver();                   
            Console.WriteLine("Enter the Drivers Name");
            string driverName = driver.Name(Console.ReadLine());    
            Console.WriteLine("Enter the Drivers Occupation");
            string driverOccupation = driver.Occupation(Console.ReadLine());
            Console.WriteLine("How many claims does this driver have?");                 
            int noOfClaims = driver.Claim(int.Parse(Console.ReadLine()));                    
            Console.WriteLine("Your car details: \n " + driverName + " \n " + driverOccupation + "\n " + noOfClaims);    
            MyDriver.Add(new Driver());                  
        }

        foreach (Driver i in MyDriver)
        {
            Console.WriteLine(" Driver Details  " + MyDriver);
        }

        // Keep the console window open in debug mode.
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }

}
更改此项:

        for (var a = 0; a < 5; a++)
        {

            Driver driver = new Driver();

            Console.WriteLine("Enter the Drivers Name");
            string driverName = driver.Name(Console.ReadLine());

            Console.WriteLine("Enter the Drivers Occupation");
            string driverOccupation = driver.Occupation(Console.ReadLine());



            Console.WriteLine("How many claims does this driver have?");

            int noOfClaims = driver.Claim(int.Parse(Console.ReadLine()));


            Console.WriteLine("Your car details: \n " + driverName + " \n " + driverOccupation + "\n " + noOfClaims);

           MyDriver.Add(new Driver());

        }
打印部分应如下所示:

  foreach (Driver i in MyDriver)
    {
        Console.WriteLine("\n Driver Details  " + i.toString());
    }

更改打印循环:

foreach (Driver i in MyDriver)
{
   Console.WriteLine(" Driver Details  " + i);
}
此代码:

    foreach (Driver i in MyDriver)
    {
        Console.WriteLine(" Driver Details  " + MyDriver);
    }
应更改为以下内容:

    foreach (Driver driver in MyDriver)
    {
        Console.WriteLine(" Driver Details  " + driver.toString());
    }

您应该在此处使用具有私有集的属性。在命令行结束循环后仍然会出现错误。System.Collection.Generic.List。一旦程序运行foreach,它就会收到文本“Driver Details”,然后旁边的错误您现在可以检查它。仍然一样,请按照上面的说明思考我的get和set,谢谢。当然,很抱歉我错过了这个。检查编辑。错误消失,但foreach打印出“驱动程序详细信息”,后跟DriverApp.Driver。DriverApp是我的名称空间,他已经为驱动程序重写了字符串,所以不需要getDetails方法。。。我没有向下滚动:)
foreach (Driver i in MyDriver)
{
   Console.WriteLine(" Driver Details  " + i);
}
    foreach (Driver i in MyDriver)
    {
        Console.WriteLine(" Driver Details  " + MyDriver);
    }
    foreach (Driver driver in MyDriver)
    {
        Console.WriteLine(" Driver Details  " + driver.toString());
    }