Bài giảng Net Framework và C# - Bài 11: Collection (Tập hợp)

Collection

Nội dung trình bày

Collection(tập hợp) là gì?

System.Collection namespace

System.Collection.Generic namespace

Lớp ArrayList

Lớp HashTable

Lớp SortedList

Lớp Dictionary

Lớp Stack

Lớp Queue

Lớp LinkedList

Collection(tập hợp) là gì?

Giả sử cần phải viết chương trình nhập vào dãy số. Cấu trúc dữ liệu để lưu trữ dãy số chúng ta nghĩ ngay đến là dùng mảng. Tuy nhiên mảng có một số nhược điểm:

Kích thước của mảng không thể thay đổi lúc thực thi chương trình

Các phần tử lưu trong mảng phải có cùng một kiểu dữ liệu

Mảng không có phương thức nào để thao tác với các phần tử trong mảng

Tập hợp là khái niệm để chỉ tập các phần tử. Ví dụ tập hợp các đối tượng của một lớp hoặc tập các đối tượng của nhiều lớp, tập các số nguyên, tập các chuỗi.

 

ppt18 trang | Chia sẻ: trungkhoi17 | Lượt xem: 429 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Bài giảng Net Framework và C# - Bài 11: Collection (Tập hợp), để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài 11Collection(tập hợp)Ôn tập lại bài cũKhái niệm ExceptionPhân loại ExceptionException classesCác thuộc tính của lớp ExceptionBắt và xử lý ngoại lệ (Exception handling)Câu lệnh ThrowCâu lệnh FinallySubject name / Session# / 3 of TotalpageNội dung trình bàyCollection(tập hợp) là gì?System.Collection namespaceSystem.Collection.Generic namespaceLớp ArrayListLớp HashTableLớp SortedListLớp DictionaryLớp StackLớp QueueLớp LinkedListCollectionCollectionCollection(tập hợp) là gì?Giả sử cần phải viết chương trình nhập vào dãy số. Cấu trúc dữ liệu để lưu trữ dãy số chúng ta nghĩ ngay đến là dùng mảng. Tuy nhiên mảng có một số nhược điểm:Kích thước của mảng không thể thay đổi lúc thực thi chương trìnhCác phần tử lưu trong mảng phải có cùng một kiểu dữ liệuMảng không có phương thức nào để thao tác với các phần tử trong mảngTập hợp là khái niệm để chỉ tập các phần tử. Ví dụ tập hợp các đối tượng của một lớp hoặc tập các đối tượng của nhiều lớp, tập các số nguyên, tập các chuỗi.So sánh mảng và tập hợpCollectionSystem.Collection namespaceĐây là namspace chứa các lớp để thao tác với tập các đối tượng(tập hợp). Dưới đây là bảng liệt kê các lớp và interface có trong namespace nàyCollectionSystem.Collection namespaceCollectionSystem.Collection.GenericNamespace Sysmte.Collection.Generic giống như namespace System.Collection. Tuy nhiên các lớp trong System.Collection.Generic là các lớp generic. CollectionLớp ArrayListLà lớp lưu trữ tập các đối tượng theo kiểu mảng, tức là truy xuất các đối tượng trong tập hợp theo chỉ số. Kích thước mặc định của ArrayList là 16 byte.Kích thước của ArrayList có thể thay đổi lúc thực thi. Nếu các phần tử được lấp đầy, kích thước của ArrayList sẽ tự động tăng gấp đôi.ArrayList có thể lưu các phần tử thuộc các kiểu dữ liệu khác nhau. ArrayList cho phép lưu giá trị null cũng như giá trị trùng lặp.Exception HandlingCác phương thức và thuộc tính thông dụngVí dụ DEMO về ArrayListCollectionLớp HashtableCho phép tạo ra một tập hợp dưới dạng key và value. Key sẽ được dùng để sinh ra Hash code tương ứng. Và Hash code sẽ dùng để xác định key và value tương ứng.Ví dụ DEMOCollectionLớp SortedListSortedList là lớp kết hợp của Hashtable và ArrayList, có nghĩa là các phần tử trong tập hợp bao gồm key và value, các phần tử được truy xuất theo chỉ số.Sự khác nhau giữa Hastable và SortedList là các phần tử trong SortedList được sắp xếp theo key của nó. Việc thực thi chương trình sử dụng SortedList chậm hơn chương trình sử dụng Hashtable do có quá trình sắp xếp các phần tử.CollectionCollectionCác phương thức và thuộc tính thông dụng của lớp SortedList Ví dụ DEMOCollectionLớp DictionaryLà lớp tạo ra tập hợp các phần tử kiểu generic gồm có key và value. Có nghĩa là nó chỉ cho phép lưu một tập các phần tử có cặp key và value có cùng kiểu dữ liệu.Dictonary không có cho phép lưu trữ giá trị null.Cú pháp: Dictionary<Tkey, Tvalue);Ví dụ DEMOCollectionLớp StackStack là một cấu trúc dữ liệu theo kiểu LIFO(Last In và First Out)CollectionVí dụ DEMOLớp QueueCấu trúc dữ liệu tổ chức theo kiểu FIFOLớp LinkedListCấu trúc dữ liệu liên kết đôiCollectionTổng kếtKhái niệm collectionSystem.Collection namespaceSystem.Collection.Generics namespaceLớp ArrayListLớp HastableLớp SortedListLớp DictionaryLớp StackLớp Que và LinkedListCollection

Các file đính kèm theo tài liệu này:

  • pptbai_giang_net_framework_va_c_bai_11_collection_tap_hop.ppt