Lớp SortedList trong C#
Lớp SortedList trong C# sử dụng một key cũng như một chỉ mục để truy cập các item trong một list.
Một danh sách đã được sắp xếp là sự tổ hợp của một mảng và một Hash Table. Nó chứa một danh sách các item mà có thể được truy cập bởi sử dụng một key hoặc một chỉ mục. Nếu bạn truy cập item bởi sử dụng một chỉ mục, nó là một ArrayList, và nếu bạn truy cập item bởi sử dụng key, nó là một HashTable. Tập hợp các item luôn luôn được sắp xếp bởi giá trị key.
Phương thức và Thuộc tính của lớp SortedList trong C#
Bảng dưới liệt kê các thuộc tính được sử dụng phổ biến của lớp SortedList trong C#:
Thuộc tính | Miêu tả |
---|---|
Capacity | Lấy hoặc thiết lập dung lượng của SortedList |
Count | Lấy số phần tử được chứa trong SortedList |
IsFixedSize | Lấy một giá trị chỉ dẫn có hay không SortedList là có kích cỡ cố định |
IsReadOnly | Lấy một giá trị chỉ dẫn có hay không SortedList là read-only |
Item | Lấy và thiết lập giá trị được liên kết với một key cụ thể trong SortedList |
Keys | Lấy các key trong SortedList |
Values | Lấy các value trong SortedList |
Bảng dưới liệt kê các phương thức được sử dụng phổ biến của lớp SortedList trong C#:
STT | Phương thức |
---|---|
1 |
public virtual void Add(object key, object value);
Thêm một phần tử với key và value đã xác định vào trong SortedList |
2 |
public virtual void Clear();
Gỡ bỏ tất cả phần tử từ SortedList |
3 |
public virtual bool ContainsKey(object key);
Xác định có hay không SortedList là chứa một key cụ thể |
4 |
public virtual bool ContainsValue(object value);
Xác định có hay không SortedList là chứa một value cụ thể |
5 |
public virtual object GetByIndex(int index);
Lấy value tại chỉ mục đã xác định của SortedList |
6 |
public virtual object GetKey(int index);
Lấy key tại chỉ mục đã xác định của SortedList |
7 |
public virtual IList GetKeyList();
Lấy các key trong SortedList |
8 |
public virtual IList GetValueList();
Lấy các value trong SortedList |
9 |
public virtual int IndexOfKey(object key);
Trả về chỉ mục (dựa trên cơ sở 0) của key đã xác định trong SortedList |
10 |
public virtual int IndexOfValue(object value);
Trả về chỉ mục (dựa trên cơ sở 0) của lần xuất hiện đầu tiên của value đã xác định trong SortedList |
11 |
public virtual void Remove(object key);
Gỡ bỏ phần tử với key đã xác định từ SortedList |
12 |
public virtual void RemoveAt(int index);
Gỡ bỏ phần tử tại chỉ mục đã xác định của SortedList |
13 |
public virtual void TrimToSize();
Thiết lập capacity tới số phần tử thực sự trong SortedList |
Ví dụ
Dưới đây là ví dụ minh họa các thuộc tính và phương thức của lớp SortedList trong C#:
using System; using System.Collections; namespace VietJackCsharp { class TestCsharp { static void Main(string[] args) { Console.WriteLine("Vi du minh hoa SortedList trong C#"); Console.WriteLine("-------------------------------------"); SortedList ht = new SortedList(); ht.Add("001", "Tran Nam"); ht.Add("002", "Minh Chinh"); ht.Add("003", "Thu Phuong"); ht.Add("004", "Hong Ngoc"); ht.Add("005", "Lam Truong"); ht.Add("006", "Thuy Hang"); ht.Add("007", "Minh Hieu"); if (ht.ContainsValue("Phuong Thanh")) { Console.WriteLine("Sinh vien co ten tren da ton tai trong danh sach"); } else { ht.Add("008", "Phuong Thanh"); } // lay tap hop cac key ICollection key = ht.Keys; foreach (string k in key) { Console.WriteLine(k + ": " + ht[k]); } Console.ReadKey(); } } }
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.
Biên dịch và chạy chương trình C# trên sẽ cho kết quả sau:
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập doanh nghiệp với Java. Khóa học có giá chỉ 400K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.
Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp chị Thu, trợ lý anh Tuyền để hỗ trợ thanh toán qua mã QR ngân hàng Việt Nam, fb: https://www.facebook.com/Thule.59
Anh Tuyền, tác giả khóa học, là cựu sinh viên chương trình đào tạo kĩ sư tài năng của đại học Bách Khoa Hà Nội với hơn 5 năm kinh nghiệm đi làm thực tế doanh nghiệp và cũng là Founder website vietjack.com, web giáo dục phổ biến nhất Việt Nam hiện tại (năm 2024). Java cũng là ngôn ngữ lập trình dễ đi xin việc nhất hiện tại, với mức lương cao, hãy nâng cao kiến thức IT của bản thân mình vì một Việt Nam giàu mạnh.
Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com
Bài học C# phổ biến khác tại vietjack.com: