Chương 2
Xử lý mảng và chuỗi
Nội dung
Mảng
Các thao tác trên mảng
Chuỗi
Các thao tác trên chuỗi
Mảng
Là tập hợp nhiều phần tử có cùng kiểu dữ liệu
Số phần tử trong mảng được xác định trước
Mỗi phần tử được đánh số chỉ mục, bắt đầu từ 0
Hình ảnh
Một phòng chứa các tủ
Số lượng tủ chứa ?
Tủ Chứa gì?
Số thứ tự tủ, chỉ mục tủ
Ví dụ mảng
Mảng các từ
1
2
8
9
0
1
2
3
4
5
6
7
Khai báo mảng
KiểuDữLiệu[]
Ví dụ
0
0
0
1
2
3
4
Khởi tạo và gán giá trị
tenMang = new KieuDuLieu[spt]{gtri1, gtri2, gtri3,…};
diem = new int[5]{ 5, 6, 7, 6, 9 }
Giá trị không nhất thiết phải là hằng số
Ví dụ
Random r = new Random();
int[] pins = new int[4]{
r.Next() % 10, r.Next() % 10,
6
9
0
1
2
3
4
Gán giá trị cho phần tử mảng
Gán điểm thứ 3 của mảng diem là 10
diem[2] = 10
5
6
10
6
1
2
3
4
Duyệt mảng
Dùng vòng lặp for
Ví dụ duyệt mảng diem
for (int i = 0; i < diem.Length; i++)
{
Console.WriteLine(diem[i].ToString());
}
Duyệt và gán phần tử
for (int i = 0; i < diem.Length; i++)
{
diem[i] += 1;
}
Console.WriteLine(diem[i].ToString());
Duyệt mảng bằng foreach
Ví dụ
Sao chép mảng
diem
5
6
7
6
9
mangA
diem
5
6
8
mangA
6
9
•
Chuyển từ số nguyên
•
char ch1 = 'a';
char ch2 = (char) 65; // Ký tự ‘A’
Chú ý:
•
Sử dụng dấu nháy đơn để khai báo kiểu char
Chuyển đổi kiểu ký tự
char.Parse(string)
Convert.ToChar(string)
Chú ý: Chuỗi đưa vào chuyển đổi chỉ có 1 ký tự.
Ví dụ
char ch1 = 'A';
char ch2 = (char)65;
char ch3 = 'B';
Console.WriteLine(ch1.Equals(ch2)); //Kết quả ‘True’
Console.WriteLine(ch1.Equals(ch3)); //Kết quả ‘False’
Kiểm tra ký tự
Char.IsDigit(ch): True nếu ch là chữ số
Char.IsLetter(ch): True nếu ch là chữ cái
Char.IsNumeric(ch): True nếu ch là chữ số Unicode
Char.IsWhiteSpace(ch): True nếu ch là khoảng trắng
Char.IsLower(ch): True nếu ch là chữ thường
Char.IsUpper(ch): True nếu ch là chữ hoa
Kiểm tra ký tự
Console.WriteLine(Char.IsDigit('1')); //True
Console.WriteLine(Char.IsDigit('½')); //False
Console.WriteLine(Char.IsNumber('½')); //True
Console.WriteLine(Char.IsNumber('2')); //True
Console.WriteLine(Char.IsLetter('1')); //False
Console.WriteLine(Char.IsLower('A')); //False
Console.WriteLine(Char.IsUpper('a')); //False
Console.WriteLine(Char.IsWhiteSpace(' ')); //True
Khai báo chuỗi
string str = "Text";
Chuỗi với ký tự đặc biệt (escape character)
Tab: "\t"
Xuống hàng: "\n"
Backslash: "\\"
Khai báo nguyên văn: thêm dấu ‘@’
string str2 = @"C:\Windows";
Chuyển đổi sang chuỗi
ToString(): trả về chuỗi ứng với nội dung của biến
int i = 1;
string str = i.ToString();
Convert.ToString(obj)