Mảng (Array) trong C# – Phần 4

Đăng ngày: 20/06/2026 • Tác giả: Quản trị viên
Mảng (Array) trong C# – Phần 4

Mảng (Array) trong C# – Phần 4

1. Mảng trong C# là gì?

Mảng (Array) trong C# là một tập hợp các phần tử có cùng kiểu dữ liệu, được lưu trữ liên tiếp trong bộ nhớ.

Lợi ích của mảng:

✅ Lưu trữ nhiều giá trị trong một biến.
✅ Truy xuất dữ liệu nhanh bằng chỉ số (index).
✅ Dễ dàng duyệt qua các phần tử bằng vòng lặp.

2. Khai báo và khởi tạo mảng

2.1. Cú pháp khai báo mảng

<kiểu dữ liệu>[] <tên mảng>;

2.2. Khai báo và khởi tạo mảng

int[] numbers = new int[5]; // Mảng có 5 phần tử

2.3. Gán giá trị cho mảng

numbers[0] = 10; // Gán giá trị 10 cho phần tử đầu tiên
numbers[1] = 20;
numbers[2] = 30;
numbers[3] = 40;
numbers[4] = 50;

2.4. Khởi tạo mảng trực tiếp

int[] numbers = { 10, 20, 30, 40, 50 };

3. Truy xuất phần tử trong mảng

Các phần tử trong mảng được đánh số từ 0.

using System;

class Program
{
    static void Main()
    {
        int[] numbers = { 10, 20, 30, 40, 50 };
        
        Console.WriteLine("Phần tử đầu tiên: " + numbers[0]);
        Console.WriteLine("Phần tử thứ ba: " + numbers[2]);
    }
}

⏳ Kết quả:

Phần tử đầu tiên: 10  
Phần tử thứ ba: 30  

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

4.1. Duyệt mảng bằng vòng lặp for

using System;

class Program
{
    static void Main()
    {
        int[] numbers = { 10, 20, 30, 40, 50 };

        for (int i = 0; i < numbers.Length; i++)
        {
            Console.WriteLine("Phần tử thứ " + (i + 1) + ": " + numbers[i]);
        }
    }
}

⏳ Kết quả:

Phần tử thứ 1: 10  
Phần tử thứ 2: 20  
Phần tử thứ 3: 30  
Phần tử thứ 4: 40  
Phần tử thứ 5: 50  

4.2. Duyệt mảng bằng vòng lặp foreach

using System;

class Program
{
    static void Main()
    {
        int[] numbers = { 10, 20, 30, 40, 50 };

        foreach (int num in numbers)
        {
            Console.WriteLine("Giá trị: " + num);
        }
    }
}

🔹 Ghi chú: foreach không cần dùng chỉ số, phù hợp để duyệt toàn bộ mảng.

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

Mảng nhiều chiều giúp lưu trữ dữ liệu dạng bảng.

5.1. Khai báo mảng 2 chiều

int[,] matrix = new int[2, 3]; // Mảng 2 hàng, 3 cột

5.2. Gán giá trị cho mảng 2 chiều

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

5.3. Truy xuất phần tử trong mảng 2 chiều

using System;

class Program
{
    static void Main()
    {
        int[,] matrix = {
            {1, 2, 3},
            {4, 5, 6}
        };

        Console.WriteLine("Giá trị tại hàng 2, cột 3: " + matrix[1, 2]);
    }
}

⏳ Kết quả:

Giá trị tại hàng 2, cột 3: 6  

5.4. Duyệt mảng 2 chiều bằng vòng lặp

using System;

class Program
{
    static void Main()
    {
        int[,] matrix = {
            {1, 2, 3},
            {4, 5, 6}
        };

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

⏳ Kết quả:

1 2 3  
4 5 6  

6. Mảng dạng danh sách (List)

Mảng có kích thước cố định, nhưng List<T> trong System.Collections.Generic có thể thay đổi kích thước linh hoạt.

6.1. Khai báo danh sách

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 10, 20, 30 };
        numbers.Add(40);  // Thêm phần tử
        numbers.Remove(20); // Xóa phần tử
        numbers[0] = 15; // Cập nhật giá trị

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

⏳ Kết quả:

15  
30  
40  

7. Tìm kiếm phần tử trong mảng

7.1. Kiểm tra phần tử có tồn tại trong mảng

using System;

class Program
{
    static void Main()
    {
        int[] numbers = { 10, 20, 30, 40, 50 };
        int search = 30;

        bool found = Array.Exists(numbers, element => element == search);
        Console.WriteLine("Tồn tại số 30: " + found);
    }
}

⏳ Kết quả:

Tồn tại số 30: True  

8. Sắp xếp mảng trong C#

C# hỗ trợ sắp xếp mảng bằng Array.Sort().

Ví dụ: Sắp xếp mảng tăng dần

using System;

class Program
{
    static void Main()
    {
        int[] numbers = { 50, 10, 40, 20, 30 };
        Array.Sort(numbers);

        foreach (int num in numbers)
        {
            Console.Write(num + " ");
        }
    }
}

⏳ Kết quả:

10 20 30 40 50  

9. Tóm tắt bài học

✅ Mảng trong C# – Lưu trữ nhiều phần tử cùng kiểu dữ liệu.
✅ Duyệt mảng – Dùng for hoặc foreach.
✅ Mảng nhiều chiều – Lưu dữ liệu dạng bảng.
✅ List – Linh hoạt hơn mảng thường.
✅ Tìm kiếm, sắp xếp mảng – Dùng Array.Exists(), Array.Sort().

💡 Bài tiếp theo:
👉 Chuỗi (String) trong C# – Phần 5 🚀

Bài viết liên quan