2

ここに私の問題があります...

「FirstName」属性と「LastName」属性だけを持つ単純な「Person」クラスがあるとします。

ユーザーが作成したい「人」の数を言ってから、それぞれの名前を入力するフォームが必要です。

たとえば、ユーザーが 20 人を作成したい場合... ボックスに 20 人を配置し、ボタンをクリックして名前を書き始めます。

彼が作成するユーザーの数がわからないので、このようにコードに何百ものオブジェクト変数を含めることはできません

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

4 に答える 4

4

ただ使用する

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

次に、次のように人を追加します。

lstPersons.Add(new Person());

その後、次の人にアクセスできます

lstPersons[0]
lstPersons[1]
...
于 2009-11-17T10:33:59.693 に答える
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();
于 2009-11-17T10:34:07.697 に答える
2

リストを使用する必要があります。次の方法でリストを作成します。

var persons=new List<Person>();

この方法でアイテムを動的に追加できます。

Person thePerson=new Person(...);
persons.Add(thePerson);
于 2009-11-17T10:31:57.530 に答える
0

おそらく、コレクションを Person オブジェクトに使用したいと思うでしょう。これらのリンクを見てみてください

于 2009-11-17T10:32:41.300 に答える