C# :初始化列表对象时出错
本文关键字:出错 对象 列表 初始化 | 更新日期: 2023-09-27 18:34:43
我想知道初始化列表对象有什么问题。 我们可以不能在同一类中创建列表对象. 初始化列表对象的规则集是什么?
class Program
{
static void Main(string[] args)
{
public int ID { get; set; }
public string Name { get; set; }
public int Salary { get; set; }
List<Program> emloyeelist = new List<Program>();
emloyeelist.Add(new Program() { ID = 1, Name = "Seema", Salary = 10000 });
**// error shown for "employeelist" in employee.Add stating that "field used like type"**
emloyeelist.Add(new Program() { ID = 2, Name = "Arun", Salary = 20000 });
emloyeelist.Add(new Program() { ID = 3, Name = "Nayana", Salary = 30000 });
emloyeelist.Add(new Program() { ID = 4, Name = "Nayana", Salary = 12000 });
emloyeelist.Add(new Program() { ID = 5, Name = "Raman", Salary = 55000 });
foreach (Program emp in emloyeelist)
{
if (emp.Salary > 20000)
{
Console.WriteLine(emp.Name +" "+"'t"+"has salry"+"'t"+ " " + emp.Salary);
}
}
}
}
将属性移到方法之外以分隔类 员工:
class Employee
{
public int ID { get; set; }
public string Name { get; set; }
public int Salary { get; set; }
}
class Program
{
static void Main(string[] args) {
List<Employee> emloyeelist = new List<Employee>();
emloyeelist.Add(new Employee() { ID = 1, Name = "Seema", Salary = 10000 });
emloyeelist.Add(new Employee() { ID = 2, Name = "Arun", Salary = 20000 });
emloyeelist.Add(new Employee() { ID = 3, Name = "Nayana", Salary = 30000 });
emloyeelist.Add(new Employee() { ID = 4, Name = "Nayana", Salary = 12000 });
emloyeelist.Add(new Employee() { ID = 5, Name = "Raman", Salary = 55000 });
foreach (Employee emp in emloyeelist)
{
if (emp.Salary > 20000)
{
Console.WriteLine(emp.Name +" "+"'t"+"has salry"+"'t"+ " " + emp.Salary);
}
}
}
}
您需要
定义一个自定义类,您的List<T>
可以使用该类。像这样尝试:
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
public decimal Salary { get; set; }
}
在此之后,像这样使用您的列表:
List<Employee> EmpList = new List<Employee>();
/*Add your data to the list */
foreach (Employee emp in emloyeelist)
{
if (emp.Salary > 20000)
{
Console.WriteLine(emp.Name +" "+"'t"+"has salry"+"'t"+ " " + emp.Salary);
}
}
这样,您可以将所需的数据包装在自定义对象中,该对象的目的只是包含此数据。你不需要为此强奸program
类。