C# 是否可以在循环中自动声明变量?C
我正在做学校作业。我有一个名为Person的类,使用这个类,用户必须向Person类的对象添加一个名称,他的姓氏等等。我在想,是否有可能在循环中自动定义变量?我有一个用户输入个人数据的循环。循环将如下所示:C# 是否可以在循环中自动声明变量?C,c#,arrays,loops,variables,C#,Arrays,Loops,Variables,我正在做学校作业。我有一个名为Person的类,使用这个类,用户必须向Person类的对象添加一个名称,他的姓氏等等。我在想,是否有可能在循环中自动定义变量?我有一个用户输入个人数据的循环。循环将如下所示: for (int n = 0; n < 20; n++) { Console.WriteLine("Input name of person no. {0}: ", n); name = Console.ReadLine(); Console.Write
for (int n = 0; n < 20; n++)
{
Console.WriteLine("Input name of person no. {0}: ", n);
name = Console.ReadLine();
Console.WriteLine("Input surname of person no. {0}", n);
surname = Console.ReadLine();
Person pers+n = new Person(name, surname);
arr[n] = pers+n;
}
所以变量的声明类似于pers+n。我不知道如何以相反的方式在这个循环中定义Person对象。谢谢 您可以使用
for (int n = 0; n < 20; n++)
{
Console.WriteLine("Input name of person no. {0}: ", n);
name = Console.ReadLine();
Console.WriteLine("Input surname of person no. {0}", n);
surname = Console.ReadLine();
Person pers = new Person(name, surname);
arr[n] = pers;
}
添加一个类以容纳一组人员
public class Persons: List<Person> {}
集合中的个人对象可以像数组persons[index]一样进行访问。SimpleVar回答了我的问题。谢谢 解决方案:
for (int n = 0; n < 20; n++)
{
Console.WriteLine("Input name of person no. {0}: ", n);
name = Console.ReadLine();
Console.WriteLine("Input surname of person no. {0}", n);
surname = Console.ReadLine();
Person pers = new Person(name, surname);
arr[n] = pers;
}
我尝试一个列表对象
List<Person> people = new List<Person>();
for (int n = 0; n < 20; n++)
{
Console.WriteLine("Input name of person no. {0}: ", n);
name = Console.ReadLine();
Console.WriteLine("Input surname of person no. {0}", n);
surname = Console.ReadLine();
Person newPerson = new Person(name, surname);
people.Add(newPerson);
}
当然,只要继续:string name=您认为我在创建第n个人,但您不是。你只需要创建一个人,然后将其放在数组的第n位。也许我没把你弄对这是我的错answer@Eldeniz别小气,我们帮了他。@SimpleVar我同意你的看法,但我希望他接受我的回答
List<Person> people = new List<Person>();
for (int n = 0; n < 20; n++)
{
Console.WriteLine("Input name of person no. {0}: ", n);
name = Console.ReadLine();
Console.WriteLine("Input surname of person no. {0}", n);
surname = Console.ReadLine();
Person newPerson = new Person(name, surname);
people.Add(newPerson);
}