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);
            }
        }

    }
}  

C# :初始化列表对象时出错

将属性移到方法之外以分隔类 员工:

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类。