Giáo trình window: Phân tích bảng giá trị của ngôn ngữ lập trình C# phần 1 - Pdf 21

Ngôn Ngữ Lập Trình C#

 Kết quả:
rectangularArray[0,0] = 0
rectangularArray[0,1] = 1
rectangularArray[0,2] = 2
rectangularArray[1,0] = 1
rectangularArray[1,1] = 2
rectangularArray[1,2] = 3
rectangularArray[2,0] = 2
rectangularArray[2,1] = 3
rectangularArray[2,2] = 4
rectangularArray[3,0] = 3
rectangularArray[3,1] = 4
rectangularArray[3,2] = 5

Trong ví dụ này, chúng ta khai báo hai giá trị:
const int rows = 4;
const int columns = 3;
hai giá trị này được sử dụng để khai báo số chiều của mảng:
int [,] rectangularArray = new int[rows, columns];
Lưu ý trong cú pháp này, dấu ngoặc vuông trong int[,] chỉ ra rằng đang khai báo một kiểu dữ
liệu là mảng số nguyên, và dấu phẩy (,) chỉ ra rằng đây là mảng hai chiều (hai dấu phẩy khai
báo mảng ba chiều, và nhiều hơn nữa). Việc tạo thể hiện thực sự của mảng ở lệnh new int
[rows,columns] để thiết lập kích thước của mỗi chiều. Ở đây khai báo và tạo thể hiện được
kết hợp với nhau.
Chương trình khởi tạo tất cả các giá trị các thành phần trong mảng thông qua hai vòng lặp
for. Lặp thông qua mỗi cột của mỗi dòng. Do đó, thành phần đầu tiên được khởi tạo là
rectangularArray[0,0], tiếp theo bởi rectangularArray[0,1] và đến rectangularArray[0,2].
Một khi điều này thực hiện xong thì chương trình sẽ chuyển qua thực hiện tiếp ở dòng tiếp
tục: rectangularArray[1,0], rectangularArray[1,1], rectangularArray[1,2]. Cho đến khi tất

{
for(int j = 0; j < columns; j++)
{
Console.WriteLine(“rectangularArray[{0},{1}] = {2}”,
i, j, rectangularArray[i,j]);
}
}
}
}
}

 Kết quả:
rectangularArray[0,0] = 0
rectangularArray[0,1] = 1
rectangularArray[0,2] = 2
rectangularArray[1,0] = 3
rectangularArray[1,1] = 4
rectangularArray[1,2] = 5
rectangularArray[2,0] = 6
rectangularArray[2,1] = 7
rectangularArray[2,2] = 8
rectangularArray[3,0] = 9
Mảng, Chỉ Mục, và Tập Hợp
224
.
.
Ngôn Ngữ Lập Trình C#
rectangularArray[3,1] = 10
rectangularArray[3,2] = 11


Array[2][4].
Ví dụ 9.6 tạo ra mảng khác kích thước tên myJaggedArray, khởi tạo các thành phần, rồi sau
đó in ra màn hình. Để tiết kiệm thời gian, chúng ta sử dụng mảng các số nguyên để các thành
phần của nó được tự động gán giá trị mặc định. Và ta chỉ cần gán một số giá trị cần thiết.
Mảng, Chỉ Mục, và Tập Hợp
225
.
.
Ngôn Ngữ Lập Trình C#
 Ví dụ 9.6: Mảng khác chiều.

namespace Programming_CSharp
{
using System;
public class Tester
{
static void Main()
{
const int rows = 4;
// khai báo mảng tối đa bốn dòng
int[][] jaggedArray = new int[rows][];
// dòng đầu tiên có 5 phần tử
jaggedArray[0] = new int[5];
// dòng thứ hai có 2 phần tử
jaggedArray[1] = new int[2];
// dòng thứ ba có 3 phần tử
jaggedArray[2] = new int[3];
// dòng cuối cùng có 5 phần tử
jaggedArray[3] = new int[5];
// khởi tạo một vài giá trị cho các thành phần của mảng

{
Console.WriteLine(“jaggedArray[3][{0}] = {1}”,
i, jaggedArray[3][i]);
}
}
}
}

 Kết quả:
jaggedArray[0][0] = 0
jaggedArray[0][1] = 0
jaggedArray[0][2] = 0
jaggedArray[0][3] = 15
jaggedArray[0][4] = 0
jaggedArray[1][0] = 0
jaggedArray[1][1] = 12
jaggedArray[2][0] = 0
jaggedArray[2][1] = 9
jaggedArray[2][2] = 99
jaggedArray[3][0] = 10
jaggedArray[3][1] = 11
jaggedArray[3][2] = 12
jaggedArray[3][3] = 13
jaggedArray[3][4] = 14

Trong ví dụ này, mảng được tạo với bốn dòng:
int[][] jaggedArray = new int[rows][];
Chú ý rằng chiều thứ hai không xác định. Do sau đó chúng ta có thể khai báo mỗi dòng có
kích thước khác nhau. Bốn lệnh sau tạo cho mỗi dòng một mảng một chiều có kích thước
khác nhau:

 Ví dụ 9.7: Chuyển đổi giữa những mảng.

namespace Programming_CSharp
{
using System;
// tạo lớp để lưu trữ trong mảng
public class Employee
{
public Employee( int empID)
{
this.empID = empID;
}
Mảng, Chỉ Mục, và Tập Hợp
228
.
.
Ngôn Ngữ Lập Trình C#
public override string ToString()
{
return empID.ToString();
}
// biến thành viên
private int empID;
private int size;
}
public class Tester
{
// phương thức này lấy một mảng các object
// chúng ta truyền vào mảng các đối tượng Employee
// và sau đó là mảng các string, có sự chuyển đổi ngầm

PrintArray( array );
}
}
}

 Kết quả:
Contents of the Array Programming_CSharp.Employee[]
Value: 5
Value: 6
Value: 7
Contents of the Array Programming_CSharp.String[]
Value: hello
Value: world

Ví dụ 9.7 bắt đầu bằng việc tạo một lớp đơn giản Employee như các ví dụ trước. Lớp Tester
bây giờ được thêm một phương thức tĩnh PrintArray() để xuất nội dung của mảng, phương
thức này có khai báo một tham số là mảng một chiều các đối tượng object:
public static void PrintMyArray( object[] theArray)
object là lớp cơ sở ngầm định cho tất cả các đối tượng trong môi trường .NET, nên nó được
khai báo ngầm định cho cả hai lớp string và Employee.
Phương thức PrintArray thực hiện hai hành động. Đầu tiên, là gọi phương thức ToString()
của mảng:
Console.WriteLine(“Contents of the Array {0}”, theArray.ToString());
Tên của kiểu dữ liệu mảng được in ra:
Contents of the Array Programming_CSharp.Employee[]

Contents of the Array System.String[]
Sau đó phương thức PrintArray thực hiện tiếp việc gọi phương thức ToString() trong mỗi
thành phần trong mảng nhận được. Do ToString() là phương thức ảo của lớp cơ sở object, và
chúng ta đã thực hiện phủ quyết trong lớp Employee. Nên phương thức ToString() của lớp

{
string[] myArray =
{
“Who”, “is”,”Kitty”,”Mun”
};
PrintArray( myArray );
Array.Reverse( myArray );
PrintArray( myArray );
string[] myOtherArray =
{
“Chung”, “toi”, “la”, “nhung”,”nguoi”,
”lap”,”trinh”, “may”, “tinh”
};
PrintArray( myOtherArray );
Array.Sort( myOtherArray );
PrintArray( myOtherArray );
}
}
}

Mảng, Chỉ Mục, và Tập Hợp
231
.
.
Ngôn Ngữ Lập Trình C#
 Kết quả:
Value: Who
Value: is
Value: Kitty
Value: Mun

Mảng, Chỉ Mục, và Tập Hợp
232
.
.


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status