如何实例化运行时确定的一定数量的对象?

时间:2009-11-17 10:28:40

标签: c# oop object instantiation

所以这是我的问题......

假设我有一个简单的“Person”类,只有“FirstName”和“LastName”属性。

我希望有一个表单,用户说他想要创建多少“人”,然后填写每个人的名字。

E.g。用户希望创建20个人...他在一个方框上放置20个单击按钮并开始编写名称。

我不知道他要创建多少用户,所以我的代码中不能有数百个对象变量

Person p1;
Person p2;
(...)
Person p1000;

4 个答案:

答案 0 :(得分:4)

只需使用

List<Person> lstPersons = new List<Person>();

然后用以下内容添加人员:

lstPersons.Add(new Person());

然后,您可以使用

访问这些人
lstPersons[0]
lstPersons[1]
...

答案 1 :(得分:3)

创建一个数组,大小与用户输入的数字相同。然后你可以循环遍历数组来实例化它们。

int numberOfPeople = xxx; // Get this value from the user's input
Person[] people = new Person[numberOfPeople];
for (int i = 0; i < people.Length; i++)
    people[i] = new Person();

答案 2 :(得分:2)

您需要使用a list。你创建了这个vay的列表:

var persons=new List<Person>();

你可以用这种方式动态添加项目:

Person thePerson=new Person(...);
persons.Add(thePerson);

答案 3 :(得分:0)

您可能希望将一个集合用于Person对象。试着看看这些链接