intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Cơ sở lập trình máy tính: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa

Chia sẻ: Cxzvscv Cxzvscv | Ngày: | Loại File: PDF | Số trang:45

70
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 6 Mảng, chỉ mục và tập hợp nằm trong bài giảng cơ sở lập trình máy tính nhằm trình bày về các nội dung chính: mảng và giao diện tập hợp, khởi tạo và truy xuất mảng, câu lệnh foreach, truyền tham số mảng vào phương thức, chỉ mục đối tượng.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở lập trình máy tính: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa

  1. Chương 6: Mảng, chỉ mục và tập hợp Giảng viên: Ths. Nguyễn Thị Khiêm Hòa Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
  2. Nội dung  Mảng  Giao diện tập hợp Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 2
  3. Danh sách  Định nghĩa Danh sách là dãy hữu hạn có thứ tự của các phần tử thuộc một lớp đối tượng.  Ký hiệu: L(a1, a2, …, an)  Danh sách tuyến tính là danh sách mà quan hệ lân cận giữa các phần tử được hiển thị Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 3
  4. Danh sách  Tổ chức lưu trữ danh sách trong bộ nhớ  Mảng - Danh sách đặc  Danh sách liên kết – Danh sách động Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 4
  5. Mảng  Tập hợp các phần tử cùng kiểu dữ liệu, nằm liên tiếp trong bộ nhớ  Có chỉ số bắt đầu từ 0  Giá trị mặc định của từng phần tử trong mảng quy định theo từng kiểu đối tượng  Mảng là đối tượng  Kích thước: có thể là 1 hoặc nhiều chiều Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 5
  6. Tạo mảng  Khai báo [ ] ;  Ví dụ: int [ ] array;  Khởi tạo [ ] = new [];  Ví dụ: int[ ] array = new int[5];  Mảng đối tượng [ ] = new [];  Ví dụ: Animal [ ] animals = new Animal [10]; Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 6
  7. Khởi tạo và truy xuất mảng  Có thể dùng dấu { } để khởi tạo giá trị cho các phần tử mảng int[] numbers = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0}; numbers[4] = 6; string[] animal = {"Mouse", "Cat", "Lion"}; animal[1]= "Elephant"; string someAnimal = animal[2]; Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 7
  8. Câu lệnh foreach  Dùng câu lệnh foreach để lặp lại việc truy xuất từng phần tử trong mảng int[] numbers = {4,5,6,1,2,3,-2,-1,0}; int Tong = 0; foreach (int a in numbers) { Tong += a; } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 8
  9. Truyền tham số mảng vào phương thức  Dùng từ khóa params để truyền tham số mảng public int Sum(params int[] list) { int total = 0; foreach ( int i in list ) { total += i; } return total; } ... int [] pe; ... int value = pe.Sum( 1, 3, 5, 7, 9, 11 ); Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 9
  10. Chỉ mục đối tượng  Dùng từ khóa this với get và set trong properties public class Zoo { private Animal[] theAnimals; public Animal this[int i] { get {return theAnimals[i];} set {theAnimals[i] = value;} } . . . } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 10
  11. Chỉ mục đối tượng public class MyList { private string [] str; private int idx = 0; public string this[int index] { get {return str[index];} set {str[index] = value;} } public MyList(params string[] InitStr) { str = new String[256]; foreach (string s in InitStr) str[idx++] = s; } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 11
  12. Chỉ mục đối tượng public void Add(string st) { if (idx > str.Length) return; else str[idx++] = st; } public int GetNumEntries() { return idx; } }//end class Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 12
  13. Chỉ mục đối tượng public class Test { static void Main() { MyList ml = new MyList("Cau truc du lieu", "CSDL"); ml.Add("Lap trinh huong doi tuong"); ml.Add("Phan tich thiet ke he thong"); string sttest = "Co so du lieu"; ml[1] = sttest; for (int i = 0; i < ml.GetNumEntries();i++) Console.WriteLine("{0}", ml[i]); } } Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 13
  14. Chỉ mục đối tượng Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 14
  15. Bài tập Thực hiện  Xây dựng lớp mảng số nguyên, thực hiện việc tính tổng, tổng chẳn, tổng lẻ … trong mảng  Xây dựng lớp Zoo chứa các động vật có trong lớp Animal. 45 min Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 15
  16. Các lớp đối tượng tập hợp (Collections)  Khái niệm  Sử dụng lớp ArrayList, List  Hàng đợi (Queue), ngăn xếp (Stack) Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 16
  17. Khái niệm  Danh sách, hàng đợi, ngăn xếp là một số các CTDL thông thường trong ứng dụng  Danh sách (List): là tập hợp các phần tử truy xuất bởi chỉ mục (index) Ví dụ: mảng; ArrayList Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 17
  18. ArrayList Class  Hạn chế của mảng  Không linh động  Tốn bộ nhớ  Lớp ArrayList cho phép gia tăng số phần tử khi cần  Có thể chứa các phần tử dữ liệu không cùng kiểu. Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 18
  19. ArrayList Class  Khai báo:  Thư viện using System.Collection  ArrayList ArrayList = new ArrayList();  Thư viện System.Collection Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 19
  20. Các thuộc tính của ArrayList  Thuộc tính  Capacity  Count  Ghi chú:  Thuộc tính Capacity có giá trị mặc định là 16, khi số phần tử lớn hơn, Capacity tự động nhân đôi.  Nếu gán giá trị cho Capacity < Count thì sẽ sinh ra lỗi ArgumentOutofRangeException Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2