Trang chủ C# cơ bản Mảng 1 chiều trong C#

Mảng 1 chiều trong C#

Nguyễn Dương 07-06-2024

1. ĐỊNH NGHĨA MẢNG

Mảng (array) trong C# là tập hợp các phần tử cùng kiểu được sắp xếp liền kề nhau trong bộ nhớ. 
Các bạn hãy quan sát hình sau:
Mảng 1 chiều

Nhìn vào hình trên, các bạn sẽ thấy, mảng là một tập hợp các phần tử cùng kiểu dữ liệu được sắp xếp liền kề nhau trong bộ nhớ và được đánh chỉ số để phân biệt. Trong C#, chỉ số phần tử là các số nguyên không âm và bắt đầu từ 0.

Muốn truy xuất phần tử nào thì gọi tên mảng và chỉ số phần tử đó. 
Ví dụ: HoTen[3] thì sẽ truy xuất phần tử thứ 4 trong mảng HoTen

2. ƯU ĐIỂM CỦA MẢNG

- Tối ưu hóa mã code
- Dễ thao tác, dễ quản lý, nâng cấp sửa chữa
- Dễ dàng áp dụng các cấu trúc lặp vào để xử lý dữ liệu
- Dễ dàng duyệt qua các phần tử
- Dễ dàng thao tác đến phần tử
- Dễ dàng sắp xếp phần tử

Giả sử một vấn đề đặt ra là ta cần nhập dữ liệu họ tên của 100 hoặc 1000 nhân viên thì bạn không thể khai báo 100 hay 1000 biến được. Thay vào đó, bạn sẽ khai báo mảng cho phần họ tên thì code sẽ ngắn gọn hơn rất nhiều. 

3. KHAI BÁO, KHỞI TẠO MẢNG 1 CHIỀU TRONG C#

- Khai báo
<kiểu dữ liệu> [] <tên mảng>;

Cách khai báo tương tự cách khai báo biến, chỉ khác là phải thêm dấu ngoặc [ ] vào sau kiểu dữ liệu và trước tên mảng. 
Cách đặt tên cho mảng tương tự cách đặt tên biến.

- Để sử dụng được mảng ta phải khởi tạo giá trị hoặc cấp phát vùng nhớ cho mảng. 
Ví dụ:
int [] MangA = new int [5];
Lưu ý là khi cấp phát vùng nhớ cho mảng 1 chiều bạn cần khai báo số phần tử tối đa của mảng. Trong ví dụ này là mảng có 5 phần tử. 

Ví dụ
int[] A = new int[10];

for (int i = 0; i < 10; i++)
{
     Console.WriteLine("Gia tri phan tu thu {0} là: {1}", i, A[i]);
}

Console.ReadLine();

Kết quả: 

Trong ví dụ này, vì mình chưa khởi tạo giá trị cho các phần tử trong mảng nên tất cả chúng đều mang giá trị 0. 

- Có 3 cách để khởi tạo giá trị cùng lúc với khai báo mảng

Cách 1:
int[] Array = new int[5]{ 69, 96, 66, 99, 696};

Cách 2: 
int[] Array = new int[]{ 69, 96, 66, 99, 696};

Cách 3:
int[] Array = { 69, 96, 66, 99, 696};


4. SỬ DỤNG MẢNG

Kiểu mảng có thể dùng làm:
- Kiểu dữ liệu cho biến
- Kiểu trả về cho hàm
- Tham số truyền vào cho hàm

Một số thuộc tính và phương thức thường sử dụng với mảng
Thuộc tính
Tác dụng
Length
Trả về số phần tử tối đa của mảng (kiểu int)
LongLength
Trả về số phần tử tối đa của mảng (kiểu long)
GetLength(số chiều)
Trả về số phần tử trong chiều xác định (kiểu int). Số chiều là số nguyên dương được đánh số từ 0
GetLongLength(số chiều)
Tác dụng tương tự GetLength, trả về kiểu long
Sort()
Phương thức sắp xếp mảng theo một thứ tự
Clear()
Phương thức xóa hết dữ liệu của mảng, đưa về giá trị mặc định của kiểu. (Xóa giá trị nhưng giữ nguyên vùng nhớ)
Copy()
Copy giá trị của một mảng ra một vùng nhớ mới
Reverse()
Đảo ngược thứ tự mảng 1 chiều


5. VÍ DỤ VỀ MẢNG

Ví dụ: Viết chương trình nhập họ tên sinh viên rồi in ra màn hình
string[] HoTenSinhVien = new string[5];

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

Console.WriteLine();

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

Kết quả: 

Bài viết liên quan

Hàm đệ quy trong C# Hàm đệ quy trong C#
enum trong C# enum trong C#
Struct trong C# Struct trong C#
Lớp String trong C# Lớp String trong C#
Vòng lặp foreach trong C# Vòng lặp foreach trong C#
Mảng đa chiều, mảng của mảng trong C# Mảng đa chiều, mảng của mảng trong C#