Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để sử dụng các chỉ mục trong C # 8.0?

^ Toán tử - Nó được gọi là chỉ mục từ toán tử cuối.

Nó trả về một chỉ mục liên quan đến phần cuối của chuỗi hoặc tập hợp.

Đây là cách nhỏ gọn nhất và dễ dàng nhất để tìm các phần tử cuối so với các phương thức trước đó.

company.listEprisees [^ 2] .Name ="Tên của Nhân viên 2 được thay đổi bằng Cú pháp mới";

company.listEprisees [^ 5] .Name ="Tên của nhân viên 5 được thay đổi bằng cú pháp mới";

company.listEprisees [^ 8] .Name ="Tên nhân viên 8 được thay đổi bằng cú pháp mới";

Ví dụ

public class Employee{
   public int EmployeeId { get; set; }
   public string Name { get; set; }
   public string Gender { get; set; }
}
public class Company{
   public List<Employee> listEmployees;
   public Company(){
      listEmployees = new List<Employee>();
      listEmployees.Add(new Employee
      { EmployeeId = 1, Name = "SS", Gender = "Male" });
      listEmployees.Add(new Employee
      { EmployeeId = 2, Name = "SSS", Gender = "Female" });
      listEmployees.Add(new Employee
      { EmployeeId = 3, Name = "SSSS", Gender = "Male" });
      listEmployees.Add(new Employee
      { EmployeeId = 4, Name = "EE", Gender = "Female" });
      listEmployees.Add(new Employee
      { EmployeeId = 5, Name = "EEEE", Gender = "Female" });
      listEmployees.Add(new Employee
      { EmployeeId = 6, Name = "TTT", Gender = "Male" });
      listEmployees.Add(new Employee
      { EmployeeId = 7, Name = "FFF", Gender = "Male" });
      listEmployees.Add(new Employee
      { EmployeeId = 8, Name = "GGG", Gender = "Male" });
   }
   public string this[int employeeId]{
      get{
         return listEmployees.
         FirstOrDefault(x => x.EmployeeId == employeeId).Name;
      }
      set{
         listEmployees.
         FirstOrDefault(x => x.EmployeeId == employeeId).Name = value;
      }
   }
}
class Program{
   public static void Main(){
      Company company = new Company();
      Console.WriteLine("Name of Employee with Id = 2: " + company[2]);
      Console.WriteLine("Name of Employee with Id = 5: " + company[5]);
      Console.WriteLine("Name of Employee with Id = 8: " + company[8]);
      System.Console.WriteLine();
      Console.WriteLine("Changing names of employees with Id = 2,5,8");
      company[2] = "Employee 2 Name Changed";
      company[5] = "Employee 5 Name Changed";
      company[8] = "Employee 8 Name Changed";
      System.Console.WriteLine();
      Console.WriteLine("Name of Employee with Id = 2: " + company[2]);
      Console.WriteLine("Name of Employee with Id = 5: " + company[5]);
      Console.WriteLine("Name of Employee with Id = 8: " + company[8]);
      company.listEmployees[^2].Name = "Employee 2 Name Changed using new
      Syntax";
      company.listEmployees[^5].Name = "Employee 5 Name Changed using new
      Syntax";
      company.listEmployees[^8].Name = "Employee 8 Name Changed using new
      Syntax";
      System.Console.WriteLine();
      Console.WriteLine("Name of Employee with Id = 2: " +
      company.listEmployees[^2].Name);
      Console.WriteLine("Name of Employee with Id = 5: " +
      company.listEmployees[^5].Name);
      Console.WriteLine("Name of Employee with Id = 8: " +
      company.listEmployees[^8].Name);
      Console.ReadLine();
   }
}

Đầu ra

Name of Employee with Id = 2: SSS
Name of Employee with Id = 5: EEEE
Name of Employee with Id = 8: GGG
Changing names of employees with Id = 2,5,8
Name of Employee with Id = 2: Employee 2 Name Changed
Name of Employee with Id = 5: Employee 5 Name Changed
Name of Employee with Id = 8: Employee 8 Name Changed
Name of Employee with Id = 2: Employee 2 Name Changed using new Syntax
Name of Employee with Id = 5: Employee 5 Name Changed using new Syntax
Name of Employee with Id = 8: Employee 8 Name Changed using new Syntax