将类对象传递到列表中

时间:2018-08-21 07:25:12

标签: c# list

我创建了一个具有乘客属性的类,以从用户那里获取详细信息

string trainno;
string trainname;
string pname;
string from;
string to;

然后我创建了获取详细信息的方法

public void getDetails()
{
    Console.WriteLine("Enter the Trainno ");
    trainno = Console.ReadLine();

    Console.WriteLine("Enter the Train name ");
    trainname = Console.ReadLine();

    Console.WriteLine("Enter the passenger name ");
    pname = Console.ReadLine();

    Console.WriteLine("From : ");
    from = Console.ReadLine();

    Console.WriteLine("To: ");
    to = Console.ReadLine();
}

和主要功能

public static void Main(String[] args)
{
    Class1 tr = new Class1();
    storeDetails sd = new storeDetails();
    tr.getDetails();
    sd.store(tr);
    Console.ReadLine();
}

和另一个用于列表的类

class storeDetails
{
    List<Class1> details = new List<Class1> { };
    public void store(Class1 c)
    {
        details.Add(c);
    }
}

,我想存储多个用户的详细信息。一个用户详细信息是列表中的一个元素。

2 个答案:

答案 0 :(得分:0)

如果要将用户放入列表中,请创建一个循环并推送到该循环

public static void Main(String[] args)
{
    Console.WriteLine("Enter number users:");
    int nbUsers = int.Parse(Console.ReadLine());
    storeDetails sd = new storeDetails();

    for(int i = 0 ; i < nbUsers ; i++)
    {
        Class1 tr = new Class1();        
        tr.getDetails();
        sd.store(tr);
    }
    Console.ReadLine();

}

答案 1 :(得分:0)

尝试

public static void Main(String[] args)
{
Class1 tr;
Console.WriteLine("Enter number users:");
int nbUsers = Console.ReadLine();
List<Class1> sd = new List<Class1>();

for(int i = 0 ; i < nbUsers ; i++)
{
    tr = new Class1();        
    tr.getDetails();
    sd.Add(tr);
}
Console.ReadLine();

}