Bài viết sau đây sẽ giới thiệu tới các bạn các kiểu dữ liệu có cấu trúc trong C#.NET. Để hiểu hơn chúng ta hãy cùng nhau tìm hiểu bài viết.
- Khái niệm:
Mảng là một tập hợp hữu hạn các phần tử có cùng kiểu dữ liệu được lưu trữ kế tiếp nhau trong bộ nhớ.
- Cách khai báo:
Để khai báo một mảng trong C# chúng ta sử dụng cú pháp như sau:
< DataType >[]< ArrayName >;
Trong đó:
DataType: kiểu dữ liệu như int, float….
ArrayName: tên mảng (hãy đặt tên nào đó có ý nghĩa và mang tính chất gợi mở nhé).
[]: cặp dấu ngoặc vuông này chỉ ra cho trình biên dịch biết chúng ta đang khai báo một mảng.
Ví dụ :
int[]x;
- Khởi tạo mảng:
Cách 1: Khai báo và chỉ ra số phần tử của mảng.
Cú pháp:
[DataType] [ ] [ArrayName] = new [DataType] [number of elements];
number of elements: số phần tử của mảng.
Ví dụ: khai báo một mảng số nguyên lưu trữ 5 phần tử.
int[] a = new int[5]
Cách 2: Khai báo sau đó mới khởi tạo số phần tử của mảng.
[DataType] [ ] [ArrayName];
[ArrayName] = new [DataType] [number of elements];
Ví dụ: khai báo một mảng số nguyên lưu trữ 5 phần tử.
Int[] a;
a = new int[5];
Cách 3: Khai báo, chỉ ra số lượng các phần tử mảng và gán các giá trị ban đầu cho các phần tử mảng.
int[] a = new int[5] {1, -1, 3, 4, 5};
- Truy cập các phần tử mảng: một mảng là một danh sách các phần tử có cùng kiểu dữ liệu, các phần tử đó được đánh số thứ tự bắt đầu từ 0 đến n-1 (Trong đó n là số phần tử của mảng).
Như vậy để truy cập đến 1 phần tử của mảng thì chúng ta sử dụng một số nguyên để chỉ ra số thứ tự của phần tử đó trong mảng, phần tử nguyên này được gọi là chỉ số (index).
Cú pháp tổng quát để truy cập đến phần tử thứ i của mảng là:
[tên mảng] [i-1];
Ví dụ: gán giá trị 5 cho phần tử thứ 3 của mảng.
a[2] = 5;
- Duyệt qua các phần tử mảng.
Kể từ khi mảng là một tập hợp các hữu hạn phần tử do đó để duyệt qua các phần tử mảng thường chúng ta sử dụng vòng lặp for.
Ví dụ. Đoạn mã lệnh sau cho phép xuất ra các phần tử của mảng trên hộp thông báo và trong listbox1.
private void button1_Click(object sender, EventArgs e)
{
// khai báo mảng
int[]a = new int[100];
//gán giá trị cho các phần tử
a[1] = 1;
a[2] = 2;
a[3] = a[1] + a[2];
//xuất ra hộp thông báo
MessageBox.Show("phan tu mang:" + a[1] + "," + a[2] + "," + a[3]);
//duyet phan tu cua mang
for (int i = 1; i <= 3; i++)
// xuất ra listbox1
listBox1.Items.Add(a[i]);
}
Kết quả:
Hình 1.10 Ví dụ về duyệt mảng
- Các kiểu mảng:
Mảng trong C# được chia thành 2 loại:
Mảng 1 chiều (single-dimension array): mảng 1 chiều là một mảng các phần tử. Mảng 1 chiều được khai báo chỉ bao gồm 1 cặp dấu [ ].
-Mảng nhiều chiều (multi-dimension array): mảng nhiều chiều là mảng có số chiều từ 2 trở lên (có từ 2 cặp [ ] trở lên).
- Đối tượng kiểu string thường chứa một chuỗi ký tự.Khi khai báo một biến chuỗi sử dụng từ khoá string như sau:
string myString;
- Khai báo và khởi tạo giá trị cho chuỗi :
string myString = "Xin chao" ;
- Chuỗi là một đối tượng trong c#. Để sử dụng các thuộc tính, phương thức của chuỗi ta cần khai báo tên đối tượng chuỗi và truy cập qua tên này.
Ví dụ. Chương trình xuất ra chuỗi, chiều dài chuỗi, chuyển đổi chữ thường sang hoa và ngược lại.
Hình 1.11 Giao diện
Hình 1.12 Mã lệnh
Hình 1.13 Kết quả
- Định nghĩa
Kiểu liệt kê đơn giản là tập hợp các tên hằng có giá trị không thay đổi (thường được gọi là danh sách liệt kê).
- Cách khai báo và sử dụng
const int DoDong = 0;
const int DoSoi = 100;
Do mục đích mở rộng ta mong muốn thêm một số hằng số khác vào danh sách trên, như các hằng sau:
const int DoNong = 60;
const int DoAm = 40;
const int DoNguoi = 20;
Các biểu tượng hằng trên điều có ý nghĩa quan hệ với nhau, cùng nói về nhiệt độ của nước, khi khai báo từng hằng trên có vẻ cồng kềnh và không được liên kết chặt chẽ cho lắm, thay vào đó C# cung cấp kiểu liệt kê để giải quyết vấn đề trên như sau:
enum NhietDoNuoc
{
DoDong = 0,
DoNguoi = 20,
DoAm = 40,
DoNong = 60,
DoSoi = 100,
}
- Mỗi kiểu liệt kê có một kiểu dữ liệu cơ sở, kiểu dữ liệu có thể là bất cứ kiểu dữ liệu nguyên nào như int, short, long... tuy nhiên kiểu dữ lịêu của liệt kê không chấp nhận kiểu ký tự.
Để khai báo một kiểu liệt kê ta thực hiện theo cú pháp sau:
[thuộc tính] [bổ sung] enum [:kiểu cơ sở]
{
danh sách các thành phần
liệt kê
};
- Thành phần thuộc tính và bổ sung là tự chọn có thể có hoặc không.
Một kiểu liệt kê bắt đầu với từ khóa enum, tiếp sau là một định danh cho kiểu liệt kê:
enum NhietDoNuoc
- Thành phần kiểu cơ sở chính là kiểu khai báo cho các mục trong kiểu liệt kê. Nếu bỏ qua thành phần này thì trình biên dịch sẽ gán giá trị mặc định là kiểu nguyên int, tuy nhiên chúng ta có thể sử dụng bất cứ kiểu nguyên nào như ushort hay long,..ngoại trừ kiểu ký tự. Đoạn ví dụ sau khai báo một kiểu liệt kê sử dụng kiểu cơ sở là số nguyên không dấu uint:
enum KichThuoc :uint
{
Nho = 1,
Vua = 2,
Lon = 3,
}
Lưu ý là khai báo một kiểu liệt kê phải kết thúc bằng một danh sách liệt kê, danh sách liệt kê này phải có các hằng được gán, và mỗi thành phần phải phân cách nhau dấu phẩy.
- Namespace: Là thư viện chứa các lớp có sẵn trong C#
Ví dụ. Không gian tên: using.System.data.sqlcilent là không gian tên chứa các lớp đối tượng dùng truy cập và xử lý dữ liệu trên cơ sở dữ liệu sqlsever.
- Truy cập vào các phương thức, thuộc tính cần chỉ rõ đường dẫn
- Tạo không gian tên mới:
Namespace <tên namespace>
{
// định nghĩa các lớp.
}
DevExpress là một công cụ nhúng giúp cung cấp các toolsbox cho nền tảng .Net Framework, nó cung
DevExpress là một công cụ nhúng giúp cung cấp các toolsbox cho nền tảng .Net Framework, nó cung
ADO.NET là gì trong C#, các thành phần của ADO.NET gồm những gì, chúng ta hãy cùng nhau tìm hiểu
ADO.NET là một khái niệm trong C#.NET, Vậy để hiểu hơn về ADO.NET chúng ta hãy tìm hiểu bài
Để hiểu hơn về lập trình C#.NET và biết được lập trình hướng đối tượng với C#.NET,
Giới thiệu lập trình hướng đối tượng với C#.NET là bài viết chúng ta sẽ tìm hiểu ngay
Để hiểu hơn về C#.NET và sự liên kết giữa các Form trong ứng dụng, hộp thoại và menu
Bài viết giới thiệu về các control trên toolbox trong C#.NET. Để hiểu hơn về bài viết,
Bài viết này xin giới thiệu tới các bạn về WINDOWS FORM trong C#.NET và các khái niệm về WINDOWS
Bài viết sau đây sẽ giới thiệu tới các bạn về chương trình con trong C#.NET. Để hiểu