Mô tả bài toán

Tạo ứng dụng Console, sử dụng CLASS để tạo cấu trúc mô tả 1 Singer như sau:
  • Id: tự tăng
  • FirstName: tên ca sĩ
  • LastName: họ ca sĩ
  • BirthYear: năm sinh
Sử dụng IEnumerable, nhập dữ liệu theo danh sách sau:
Id FirstNAme LastName BirthYear
1 Freddie Mercury 1964
2 Elvis Presley 1954
3 Chuck Berry 1954
4 Ray Charles 1950
5 David Bowie 1964
Yêu cầu, sử dụng LINQ để trả lời các câu hỏi sau:
  1. Tìm ca sĩ có năm sinh 1954 (chỉ lấy người đứng cuối danh sách)
  2. Tìm ca sĩ có năm sinh 1954 (chỉ lấy người đứng đầu danh sách)
  3. Tìm ca sĩ có năm sinh lớn tuổi nhất (chỉ lấy duy nhất 1 người, sắp xếp theo thứ tự ABC)
  4. In ra danh sách tên đầy đủ của Ca sĩ (Last name + First name).
  5. Tìm ca sĩ có Họ tên (Last name + First name) có ký tự dài nhất?

Cách giải quyết

  • Tạo class Singer với các thuộc tính mô tả bên trên.
  • Sử dụng IEnumerable<Singer> để khai báo danh sách dữ liệu.
public class Singer
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int BirthYear { get; set; }
}
 
IEnumerable<Singer> singers = new List<Singer>() 
            {
                new Singer(){Id = 1, FirstName = "Freddie", LastName = "Mercury", BirthYear=1964}
                , new Singer(){Id = 2, FirstName = "Elvis", LastName = "Presley", BirthYear = 1954}
                , new Singer(){Id = 3, FirstName = "Chuck", LastName = "Berry", BirthYear = 1954}
                , new Singer(){Id = 4, FirstName = "Ray", LastName = "Charles", BirthYear = 1950}
                , new Singer(){Id = 5, FirstName = "David", LastName = "Bowie", BirthYear = 1964}
            };
  • Áp dụng LINQ để truy vấn.

Source code

 

Github