Tài liệu Lập trình .NET và C# - Lecture 8: Mảng, chỉ mục và tập hợp: 1Lập trình .NET và C#
Lecture 8: 
MẢNG, CHỈ MỤC, VÀ TẬP HỢP
TS Đào Nam Anh
UTM, Khoa KH&CN
2Resources
 Các giải pháp lập trình C#, Nguyễn Ngọc Bình Phương - Thái Thanh Phong
 Allen Jones. C# Programmer's Cookbook. Microsoft Press, 2004
 John Connell. Coding Techniques for Microsoft Visual Basic .NET. Microsoft 
Press, 2002.
 Harvey M. Deitel, Paul J. Deitel, & Tem R. Nieto. Visual Basic .NET How to 
Program, Second Edition. Prentice Hall, 2002.
 Jose Mojica. C# and VB .NET Conversion Pocket Reference. O'Reilly, 2002.
 James Avery. Ten Must-Have Tools Every Developer Should Download Now. 
MSDN Magazine, 2004.
 Karl Moore. The Ultimate VB.NET and ASP.NET Code Book. Apress, 2003
 Matthew MacDonald. Microsoft Visual Basic .NET Programmer's Cookbook. 
Microsoft Press, 2003.
 Mark Schmidt & Simon Robinson. Microsoft Visual C# .NET 2003 Developer's 
Cookbook. Sams Publishing, 2003.
 Dương Quang Thiện. Lập trình Visual C# thế nào? Nhà xuất bản Tổng Hợp TP. 
Hồ Ch...
                
              
                                            
                                
            
 
            
                 16 trang
16 trang | 
Chia sẻ: putihuynh11 | Lượt xem: 639 | Lượt tải: 0 
              
            Bạn đang xem nội dung tài liệu Lập trình .NET và C# - Lecture 8: Mảng, chỉ mục và tập hợp, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1Lập trình .NET và C#
Lecture 8: 
MẢNG, CHỈ MỤC, VÀ TẬP HỢP
TS Đào Nam Anh
UTM, Khoa KH&CN
2Resources
 Các giải pháp lập trình C#, Nguyễn Ngọc Bình Phương - Thái Thanh Phong
 Allen Jones. C# Programmer's Cookbook. Microsoft Press, 2004
 John Connell. Coding Techniques for Microsoft Visual Basic .NET. Microsoft 
Press, 2002.
 Harvey M. Deitel, Paul J. Deitel, & Tem R. Nieto. Visual Basic .NET How to 
Program, Second Edition. Prentice Hall, 2002.
 Jose Mojica. C# and VB .NET Conversion Pocket Reference. O'Reilly, 2002.
 James Avery. Ten Must-Have Tools Every Developer Should Download Now. 
MSDN Magazine, 2004.
 Karl Moore. The Ultimate VB.NET and ASP.NET Code Book. Apress, 2003
 Matthew MacDonald. Microsoft Visual Basic .NET Programmer's Cookbook. 
Microsoft Press, 2003.
 Mark Schmidt & Simon Robinson. Microsoft Visual C# .NET 2003 Developer's 
Cookbook. Sams Publishing, 2003.
 Dương Quang Thiện. Lập trình Visual C# thế nào? Nhà xuất bản Tổng Hợp TP. 
Hồ Chí Minh, 2005.
 Nguyễn Ngọc Bình Phương & Lê Trần Nhật Quỳnh. Các giải pháp lập trình 
Visual Basic .NET. Nhà xuất bản Giao thông Vận tải, 2006
 www.msdn.microsoft.com, www.codeproject.com, www.msd2d.com, 
www.developersdex.com, www.windowsforms.net, www.gotdotnet.com, 
www.codeguru.com, www.developerfusion.com
3Mảng
Khai báo mảng
Giá trị mặc định
Truy cập các thành phần trong mảng
Khởi tạo thành phần trong mảng
Sử dụng từ khóa params
Câu lệnh lặp foreach
Mảng đa chiều
Mảng đa chiều cùng kích thước
Mảng đa chiều kích thước khác nhau
Chuyển đổi mảng
System.Array
Bộ chỉ mục
Bộ chỉ mục và phép gán
Sử dụng kiểu chỉ số khác
Giao diện tập hợp
4Mảng
 Mảng là một tập hợp có thứ tự của những đối 
tượng, tất cả các đối tượng này cùng một 
kiểu. 
 Mảng trong ngôn ngữ C# có một vài sự khác 
biệt so với mảng trong ngôn ngữ C++ và một 
số ngôn ngữ khác, bởi vì chúng là những đối 
tượng. 
 Điều này sẽ cung cấp cho mảng sử dụng các 
phương thức và những thuộc tính.
5Mảng
Khai báo mảng
Chúng ta có thể khai báo một mảng trong C# 
với cú pháp theo sau:
[] 
Ví dụ ta có khai báo như sau:
int[] myIntArray;
cách sử dụng từ khóa new như sau:
myIntArray = new int[6];
sẽ tạo ra một mảng 6 số nguyên, và mỗi thành 
phần được thiết lập giá trị mặc định là 0
6Mảng
Khai báo mảng
Button[] myButtonArray;
và chúng ta tạo thể hiện của mảng như sau:
myButtonArray = new Button[3];
viết ngắn gọn như sau:
Button muButtonArray = new Button[3];
tạo ra một mảng myButtonArray với ba tham 
chiếu null. Để sử dụng mảng này, đầu tiên 
chúng ta phải tạo và gán đối tượng Button 
cho từng thành phần tham chiếu trong mảng.
7Mảng
Truy cp các thành phn mng
đánh chỉ mục từ 0 đến Length –1.
thành phần đầu tiên là myArray[0].
8Mảng
Khi to thành phn ca mng
int[] myIntArray = new int[5] { 2, 4, 6, 8, 10};
int[] myIntArray = { 2, 4, 6, 8, 10};
9Câu lệnh lặp foreach
Câu lệnh foreach cho phép chúng ta lặp qua 
tất cả các mục trong một mảng hay trong một 
tập hợp.
foreach ( <tên truy 
cập> in )
{
// thực hiện thông qua tương ứng với
// từng mục trong mảng hay tập hợp
}
10
Mảng
S dng t khóa params
static void Main()
{
DisplayVals(5,6,7,8);
int[] explicitArray = new int[5] {1,2,3,4,5};
DisplayVals(explicitArray);
}
public void DisplayVals( params int[] intVals)
{
foreach (int i in intVals)
{
Console.WriteLine(“DisplayVals {0}”, i);
}
}
11
Mảng đa chiều
 Mảng hai chiều được tổ chức thành các dòng 
và cột, trong đó các dòng là được tính theo 
hàng ngang của mảng, và các cột được tính 
theo hàng dọc của mảng.
 Mảng ba chiều cũng có thể được tạo ra 
nhưng thường ít sử dụng do khó hình dung. 
Trong mảng ba chiều những dòng bây giờ là
các mảng hai chiều.
12
Mảng đa chiều
 [,] 
const int rows = 4;
const int columns = 3;
int [,] rectangularArray = new int[rows, 
columns];
13
Mảng đa chiều
for( int i = 0; i < rows; i++)
{
for(int j = 0; j < columns; j++)
{
Console.WriteLine(“rectangularArray[{0},{1}] = {2}”,
i, j, rectangularArray[i,j]);
}
}
14
Mảng đa chiều
Mảng đa chiều cùng kích thước
 Mảng hai chiều được tổ chức thành các dòng 
và cột, trong đó các dòng là được tính theo 
hàng ngang của mảng, và các cột được tính 
theo hàng dọc của mảng.
 Mảng ba chiều cũng có thể được tạo ra 
nhưng thường ít sử dụng 
 Mảng đa chiều cùng kích thước còn gọi là
mảng hình chữ nhật (rectanguler array).
15
Mảng đa chiều
Mảng đa chiều kích thước khác 
nhau
 kích thước của các chiều có thể không bằng 
nhau, điều này khác với mảng đa chiều cùng 
kích thước. 
 Nếu hình dạng của mảng đa chiều cùng kích 
thước có dạng hình chữ nhật thì hình dạng 
của mảng này không phải hình chữ nhật vì
các chiều của chúng không điều nhau.
16
Question
            Các file đính kèm theo tài liệu này:
 csharp008_1398_1987445.pdf csharp008_1398_1987445.pdf