Danh mục

Session 4_ Data Manipulation

Số trang: 34      Loại file: ppt      Dung lượng: 510.50 KB      Lượt xem: 4      Lượt tải: 0    
Hoai.2512

Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Mảng đa chiều - Mảng đa chiều là mảng mà mỗi phần tử của mảng là một mảng khác. - Mảng 2 chiều được tổ chức thành các dòng và cột, các dòng được tính theo hàng ngang, các cột được tính theo hàng dọc. Trong bộ nhớ được tổ chức liên tục. ốS phần tử trong mảng bằng tích các kích thước mảng theo...
Nội dung trích xuất từ tài liệu:
Session 4_ Data Manipulation Thao tác dữ liệu1. Kiểu dữ liệu mảng.+ Khái niệm.+ Mảng 1 chiều, mảng nhiều chiều.+ Mảng của mảng.2. Kiểu dữ liệu xâu kí tự.-Thao tác với kiểu dữ liệu xâu ký tự.- Thao tác chuỗi một cách hiệu quả sử dụng StringBuilder.- Sử dụng biểu thức chính quy để kiểm tra dữ liệu nh ập.3. Kiểu dữ liệu liệt kê.4. Kiểu dữ liệu struct. 1 1. Mảng (Arrays)- Khái niệm.- Khai báo mảng.- Làm việc với mảng (Working with Arrays).- Mảng nhiều chiều (Multidimensional Arrays in C#).- Mảng jagged. 2 Khái niệm- 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 C# là một đối tượng. 3 Mảng 2 chiềuMảng 1 chiều Mảng 3 chiều 4 Mảng 1 chiều- Khai báo:+ Cú pháp: [] ;Ví dụ: double [ ] arr_dbl;+ Để tạo thể hiện của một mảng dùng từ khóa newarr_dbl =new double[6]; // Thiết lập trong bộ nhớ một mảng 6 số double. (1).+ Mảng là kiểu dữ liệu tham chiếu được tạo ra trên heap.- Giá trị mặc định:+ Khi tạo một mảng kiểu dữ liệu giá trị, mỗi thành phần dữ liệu sẽ chứa giá trị mặc định của kiểu dữ liệu. Như (1) 6 phần tử của mảng có giá trị 0.+ Khi tạo một mảng kiểu dữ liệu tham chiếu, các ph ần t ử mảng mang giá trị null. 5 Mảng 1 chiều- Truy cập các thành phần của mảng: Dùng toán tử ch ỉ mục [ ]. Mảng dùng cơ sở là 0, phần tử đầu tiên của mảng có chỉ mục bằng 0.- Ví dụ: arr_dbl[0] = 10.0; // Gán giá trị cho ph ần t ử đ ầu tiên của mảng. - In các phần tử của mảng: for(int i=0; i Khởi tạo thành phần của mảng- Có thể khởi tạo các phần tử của mảng ngay khi tạo thể hiện của mảng.- Có các cách như ví dụ sau: int[] myIntArray = new int [5]; int[] myIntArray = new int[5] { 2, 4, 6, 8, 10}; int[] myIntArray = { 2, 4, 6, 8, 10}; // Tập các giá tr ị 7 Câ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 phần tử trong một mảng hay trong một tập hợp.- Cú pháp:foreach ( 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} 8 Ví dụ foreach- Tính tổng các phần tử của mảng double. double[] arr_dbl = { 10, -0.5, 20, 12, -8.3}; double tong=0; foreach (double item in arr_dbl) tong += item; 9 Mảng đa chiều- Mảng đa chiều là mảng mà mỗi phần tử của mảng là một mảng khác.- Mảng 2 chiều được tổ chức thành các dòng và cột, các dòng được tính theo hàng ngang, các cột được tính theo hàng dọc. Trong bộ nhớ được tổ chức liên tục. Số phần tử trong mảng bằng tích các kích thước mảng theo các chiều.- Lệnh foreach trong mảng đa chiều tương tự m ảng 1 chi ều.- Mảng nhiều chiều có 2 loại:+ Mảng đa chiều cùng kích thước.+ Mảng đa chiều không cùng kích thước. 10 Mảng đa chiều cùng kích thước- Khai báo: [, ,…,] ;- Tạo thể hiện của một mảng k chiều: tên mảng = new [n1, …., nk];- Để truy cập các phần tử của mảng k chiều phải dùng k chỉ số. Chỉ số cơ sở của mỗi chiều là 0.- Để duyệt qua tất cả các phần tử của mảng dùng k vòng lặp for lồng nhau hoặc vòng lặp foreach. 11 Khởi tạo mảng nhiều chiều- Có thể khởi tạo mảng 2 chiều theo các cách như ví dụ sau:+ Mảng hai chiều gồm hai hàng ba cột với phần tử kiểu nguyên : int[,] myRectArray = new int[2,3];+ Hoặc có thể khởi tạo như sau: int[,] myRectArray = new int[,]{ {1,2},{3,4},{5,6},{7,8}}; mảng 4 hàng 2 cột. int[,] myRectArray = new int[4,2]{ {1,2},{3,4},{5,6},{7,8}}; mảng 4 hàng 2 cột. string[,] beatleName = { {Lennon,John}, {McCartney,Paul}, {Harrison,George}, {Starkey,Richard} }; 12 Làm việc với mảng- Thuộc tính Length trả về số phần tử của mảng: int arrayLength = integers.Length- Sắp xếp mảng tăng dần bằng cách phương thức static là Array.Sort(): Array.Sort(myArray);- Đảo ngược thứ tự các phần tử của mảng dùng phương th ức static Reverse() : Array.Reverse(myArray).- Clone(): copy mảng ra đối tượng kiểu System.Array.- CopyTo: Copy các phần tử của mảng ra một mảng khác.- GetLength: trả về kích thước mảng của chiều đã chỉ định.- Initialize(): khởi tạo các phần tử của mảng bằng giá trị mặc định của kiểu dữ liệu.- Rank: trả về số chiều của mảng. 13 Mảng jagged- Jagged là mảng nhiều chiều có kích thước khác nhau.Trong mảng này, mỗi phần tử là một mảng 1 chiều. Ví dụ: int[][] a = new int[3][];// mảng 2 chiều và có 3 hàng a[0] = new int[4];// hàng thứ nh ất có 4 c ột a[1] = new int[3];// … a[2] = new int[1]; 14 Mảng jaggedstatic void Main() { string[][] novelists = new string[3][]; novelists[0] = new string[] {Fyodor, Mikhailovich, Dostoyevsky}; novelists[1] = new string[] { James, Augustine, Aloysius, Joyce}; novelists[2] = new string[] {Miguel, de Cervantes, Saavedra}; // Loop through each novelist in the array int i; for (i = 0; i < novelists.GetLength(0); i++) { // Loop through each name for the novelist int j; for (j = 0; j < novelists[i].GetLength(0); j++) { // Display curren ...

Tài liệu được xem nhiều: