所以我已经编写了一段时间的 C# 代码并学习了基础知识,总是让我停滞不前的一件事是我如何创建一个类,然后使用列表供用户输入值。
我不知道我是否完全不了解这段代码,问题是我不明白为什么我不能使用我新创建的类对象并向它添加输入。感谢所有帮助
class Program
{
static void Main(string[] args)
{
List<Citizen> listOfCitizens = new List<Citizen>();
for (int i = 0; i < listOfCitizens.Count; i++)
{
Console.WriteLine("Enter Surname for the citizen:");
listOfCitizens.SurName.add = Console.ReadLine();
Console.WriteLine("Enter Lastname for the citizen:");
listOfCitizens.Lastname.add = Console.ReadLine();
Console.WriteLine("Enter age of the citizen:");
listOfCitizens.age.add = int.Parse(Console.ReadLine());
}
Console.WriteLine($"Name {Citizen.SurName} {Citizen.LastName} {Citizen.age}");
Console.Read();
}
}
class Citizen
{
public static string SurName{ get; set; }
public static string LastName{get;set;}
public static int age { get; set; }
}
最佳答案
某物列表不是某物。就像一篮子苹果不是苹果一样。你不吃篮子,你吃篮子里的东西。
因此,当您创建列表时:
List<Citizen> listOfCitizens = new List<Citizen>();
然后您将创建一个项目以添加到列表中:
Citizen someCitizen = new Citizen();
someCitizen.SurName = "Smith";
// etc.
然后将其添加到列表中:
listOfCitizens.Add(someCitizen);
另外,您的Citizen
有点不正常。这些属性不应该是static
。不确定为什么要那样做,但您应该从 Citizen
类中的所有内容中删除 static
关键字。
关于c# - 为 ClassList 创建多个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42003407/