Chuyển tới nội dung chính

1.6 — 5. Mảng và Danh Sách (Arrays & Lists)

Mục tiêu bài học

  • Nắm được ý chính của bài và mối liên hệ với module.
  • Áp dụng được kiến thức vào bối cảnh CRM/.NET backend.
  • Sẵn sàng chuyển sang bài kế tiếp với nền tảng chắc chắn.

Nội dung bài học

1.6.1 — Array — mảng cố định

// Mảng 3 phần tử, không thể thêm/bớt sau khi tạo
string[] danhSachSales = { "Minh", "Hoa", "Tùng" };

Console.WriteLine(danhSachSales[0]); // Output: Minh (index bắt đầu từ 0)
Console.WriteLine($"Số sales: {danhSachSales.Length}");

1.6.2 — List<T> — danh sách linh hoạt

Trong thực tế, List<T> được dùng nhiều hơn array vì có thể thêm/xóa phần tử:

var danhSachLead = new List<string>();

// Thêm lead mới
danhSachLead.Add("Công ty ABC");
danhSachLead.Add("Cửa hàng XYZ");
danhSachLead.Add("Startup 123");

Console.WriteLine($"Tổng số lead: {danhSachLead.Count}");

// Xóa một lead
danhSachLead.Remove("Cửa hàng XYZ");

// Kiểm tra tồn tại
bool coLead = danhSachLead.Contains("Công ty ABC"); // true

// Duyệt danh sách
foreach (string lead in danhSachLead)
{
Console.WriteLine($"- {lead}");
}

1.6.3 — Dictionary<K,V> — từ điển key-value

Dùng khi cần tra cứu nhanh theo một khóa:

// Key: mã khách hàng | Value: điểm tích lũy
var diemKhachHang = new Dictionary<string, int>
{
{ "KH001", 350 },
{ "KH002", 820 },
{ "KH003", 120 }
};

// Tra cứu
int diem = diemKhachHang["KH002"];
Console.WriteLine($"Điểm KH002: {diem}"); // Output: 820

// Thêm mới
diemKhachHang["KH004"] = 500;

// Kiểm tra key tồn tại trước khi lấy (an toàn hơn)
if (diemKhachHang.TryGetValue("KH005", out int diemKH005))
{
Console.WriteLine($"Điểm KH005: {diemKH005}");
}
else
{
Console.WriteLine("KH005 chưa có trong hệ thống");
}

Bài tập áp dụng

  1. Tóm tắt bài học bằng ngôn ngữ của bạn.
  2. Liên hệ nội dung với một tình huống thực tế trong dự án.
  3. Đề xuất một cải tiến cụ thể sau khi học bài này.

Tự kiểm tra

  • Bạn có thể giải thích lại nội dung chính trong 2 phút không?
  • Bạn có ví dụ áp dụng thực tế chưa?
  • Bạn biết bước tiếp theo cần học/triển khai là gì không?

Kết luận

Hoàn thành bài này giúp bạn có góc nhìn đầy đủ hơn trước khi đi tiếp trong module.

Điều hướng