Tạo bởi Trần Văn Điêp|
C Sharp

[Video] Array C# - Hướng dẫn tìm hiểu Array trong C#. C Sharp, Lập Trình C#, Lập Trình C Sharp

Giới thiệu

Trong quá trình học lập trình C#, bạn sẽ sớm nhận ra rằng việc lưu trữ và xử lý nhiều dữ liệu cùng loại là một yêu cầu rất phổ biến. Chẳng hạn, bạn muốn lưu danh sách điểm của sinh viên, tên sản phẩm trong cửa hàng hoặc dãy số nguyên để tính toán. Nếu dùng từng biến riêng lẻ để lưu trữ, chương trình của bạn sẽ trở nên dài dòng, rối rắm và khó quản lý. Đó chính là lý do Array (mảng trong C#) ra đời – một trong những cấu trúc dữ liệu cơ bản nhưng cực kỳ quan trọng mà bất kỳ lập trình viên nào cũng phải nắm vững.

Array trong C# không chỉ giúp bạn tổ chức dữ liệu một cách khoa học, mà còn giúp tối ưu hiệu năng và dễ dàng thao tác hơn với vòng lặp (loop). Bạn có thể duyệt qua các phần tử, tính toán tổng, tìm giá trị lớn nhất, hoặc sắp xếp chúng chỉ trong vài dòng mã.

Trong bài viết này, chúng ta sẽ cùng nhau khám phá toàn diện về Array trong C#, từ khái niệm, cách khai báo, khởi tạo, đến cách duyệt và áp dụng trong thực tế. Bài viết này sẽ là nền tảng vững chắc giúp bạn hiểu sâu hơn về C Sharp và làm chủ kỹ thuật lập trình C# hiện đại.


Khái niệm cơ bản về Array trong C#

Array là gì?

Array (mảng) là một tập hợp các phần tử có cùng kiểu dữ liệu và được lưu trữ liên tiếp trong bộ nhớ. Mỗi phần tử trong mảng được xác định bằng chỉ số (index) bắt đầu từ 0.

Ví dụ: nếu bạn có mảng int[] numbers = {1, 2, 3, 4, 5};
thì:

  • numbers[0] = 1

  • numbers[4] = 5

Array giúp bạn:

  • Lưu trữ nhiều giá trị trong một biến duy nhất.

  • Dễ dàng truy cập và thao tác từng phần tử.

  • Giúp tối ưu bộ nhớ và tăng hiệu suất chương trình.

Cú pháp khai báo mảng trong C#

int[] numbers; // Khai báo mảng số nguyên numbers = new int[5]; // Khởi tạo mảng với 5 phần tử

Hoặc bạn có thể khai báo và khởi tạo cùng lúc:

int[] numbers = new int[5] { 1, 2, 3, 4, 5 };

Hoặc đơn giản hơn:

int[] numbers = { 1, 2, 3, 4, 5 };

Các loại mảng trong C#

Trong C#, mảng không chỉ giới hạn ở một chiều. Bạn có thể sử dụng nhiều loại mảng khác nhau tùy mục đích:

1. Mảng một chiều (One-dimensional Array)

Đây là loại mảng phổ biến nhất, dùng khi bạn chỉ cần lưu trữ danh sách các phần tử.

Ví dụ:

int[] scores = { 80, 90, 75, 88, 92 }; for (int i = 0; i < scores.Length; i++) { Console.WriteLine($"Phần tử thứ {i}: {scores[i]}"); }

2. Mảng hai chiều (Two-dimensional Array)

Loại mảng này giống như một bảng (table) gồm nhiều hàng và cột.
Cú pháp:

int[,] matrix = new int[2, 3] { {1, 2, 3}, {4, 5, 6} };

Bạn có thể duyệt qua nó như sau:

for (int i = 0; i < 2; i++) { for (int j = 0; j < 3; j++) { Console.Write(matrix[i, j] + " "); } Console.WriteLine(); }

3. Mảng nhiều chiều (Multidimensional Array)

Khi bạn cần lưu trữ dữ liệu phức tạp hơn, như không gian 3D, có thể dùng mảng ba chiều:

int[,,] cube = new int[2, 2, 2] { { {1, 2}, {3, 4} }, { {5, 6}, {7, 8} } };

Làm việc với mảng trong C#

Truy cập phần tử trong mảng

Để lấy hoặc gán giá trị cho phần tử, bạn chỉ cần dùng chỉ số (index):

int[] numbers = { 10, 20, 30, 40 }; Console.WriteLine(numbers[2]); // In ra 30 numbers[1] = 99; Console.WriteLine(numbers[1]); // In ra 99

Tính độ dài của mảng

C# cung cấp thuộc tính .Length để xác định số phần tử trong mảng:

Console.WriteLine("Số phần tử trong mảng: " + numbers.Length);

Duyệt qua mảng bằng vòng lặp

Bạn có thể sử dụng nhiều loại loop để duyệt mảng:

1. For loop

for (int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); }

2. Foreach loop

foreach (int num in numbers) { Console.WriteLine(num); }

Ví dụ thực tế: In dãy số chẵn và lẻ từ mảng

Một ví dụ phổ biến khi học array trong C# là in ra các số chẵn và lẻ từ một mảng.

int[] numbers = { 1, 4, 7, 8, 10, 13, 16 }; Console.WriteLine("Các số chẵn:"); foreach (int num in numbers) { if (num % 2 == 0) Console.Write(num + " "); } Console.WriteLine("\nCác số lẻ:"); foreach (int num in numbers) { if (num % 2 != 0) Console.Write(num + " "); }

Kết quả:

c số chẵn: 4 8 10 16c số lẻ: 1 7 13

Một số phương thức thao tác với mảng trong C#

C# cung cấp nhiều phương thức hữu ích trong lớp Array:

1. Array.Sort()

Sắp xếp mảng theo thứ tự tăng dần:

Array.Sort(numbers);

2. Array.Reverse()

Đảo ngược thứ tự các phần tử:

Array.Reverse(numbers);

3. Array.IndexOf()

Tìm vị trí của phần tử trong mảng:

int index = Array.IndexOf(numbers, 10);

4. Array.Copy()

Sao chép dữ liệu từ mảng này sang mảng khác:

int[] copy = new int[numbers.Length]; Array.Copy(numbers, copy, numbers.Length);

Lưu ý và mẹo khi làm việc với Array trong C#

  • Chỉ số mảng luôn bắt đầu từ 0 – nếu bạn truy cập phần tử ngoài phạm vi, chương trình sẽ báo lỗi IndexOutOfRangeException.

  • Kích thước mảng cố định – bạn không thể thêm hoặc xóa phần tử sau khi khởi tạo.
    → Nếu cần thay đổi kích thước linh hoạt, hãy dùng List<T>.

  • Khai báo rõ ràng kiểu dữ liệu – giúp tăng tốc độ xử lý và giảm lỗi kiểu dữ liệu.

Lời khuyên cho người mới học C#:

  1. Bắt đầu với mảng một chiều để hiểu cách truy cập chỉ số.

  2. Dùng foreach thay vì for khi không cần biết vị trí phần tử.

  3. Luôn kiểm tra giới hạn mảng bằng .Length trước khi thao tác.


Ứng dụng thực tế của Array trong lập trình C#

Mảng được sử dụng rất rộng rãi trong các tình huống sau:

  • Quản lý danh sách dữ liệu: lưu điểm số, tên người dùng, mã sản phẩm.

  • Xử lý dữ liệu số học: tính tổng, trung bình, tìm giá trị lớn nhất/nhỏ nhất.

  • Lưu trữ dữ liệu tạm thời: khi cần thao tác nhanh mà không cần cấu trúc dữ liệu phức tạp.

  • Lập trình game: lưu tọa độ, điểm, trạng thái của nhân vật.

Ví dụ:

int[] scores = { 80, 95, 67, 100, 90 }; int max = scores[0]; foreach (int score in scores) { if (score > max) max = score; } Console.WriteLine($"Điểm cao nhất là: {max}");

Sự khác biệt giữa Array và List trong C#

Tiêu chíArrayList
Kích thướcCố địnhLinh hoạt
Hiệu suấtNhanh hơn khi truy cập trực tiếpLinh hoạt hơn nhưng chậm hơn chút
Cú phápint[] arr = new int[5];List<int> list = new List<int>();
Chức năngCơ bảnNhiều phương thức mở rộng (Add, Remove, Find, v.v.)

Khi nào nên dùng Array?

  • Khi bạn biết trước số lượng phần tử.

  • Khi cần tốc độ truy cập cao và bộ nhớ ổn định.

Khi nào nên dùng List?

  • Khi dữ liệu có thể thay đổi kích thước linh hoạt.

  • Khi cần các thao tác thêm/xóa linh hoạt.


Kết luận

Qua bài viết này, bạn đã nắm vững cách sử dụng Array trong C#, hiểu rõ cú pháp, cách khai báo, duyệt mảng và áp dụng vào các bài toán thực tế như in dãy số chẵn lẻ, tìm giá trị lớn nhất, hoặc sắp xếp mảng.

Array C# không chỉ là nền tảng cơ bản trong lập trình mà còn là “cánh cửa” dẫn bạn đến những cấu trúc dữ liệu phức tạp hơn như List, Dictionary, hoặc Queue. Khi hiểu và sử dụng thành thạo mảng, bạn sẽ viết được code sạch hơn, tối ưu hơn và chuyên nghiệp hơn.

Nếu bạn đang trên hành trình học lập trình C Sharp, hãy luyện tập thật nhiều với mảng — từ các ví dụ đơn giản đến các bài toán thực tế. Chính việc thực hành thường xuyên sẽ giúp bạn hiểu sâu hơn và tiến nhanh hơn trên con đường trở thành lập trình viên chuyên nghiệp.

👉 Hãy mở Visual Studio lên và thử ngay vài ví dụ trong bài này. Bắt đầu viết code, chạy thử, và cảm nhận sức mạnh của Array trong C# – bước khởi đầu vững chắc để làm chủ thế giới lập trình!

Phản hồi từ học viên

5

Tổng 0 đánh giá

Đăng nhập để làm bài kiểm tra

Chưa có kết quả nào trước đó