Lớp Hashtable trong C#



Lớp Hashtable trong C# sử dụng một cặp key-value để truy cập các phần tử trong collection này.

Một Hash Table được sử dụng khi bạn cần truy cập các phần tử bởi sử dụng key, và bạn có thể nhận diện một giá trị key hữu ích. Mỗi item trong Hash Table có một cặp key và value. Key được sử dụng để truy cập các item trong dạng collection này.

Phương thức và Thuộc tính của lớp Hashtable 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 Hashtable trong C#:

Thuộc tính Miêu tả
Count Lấy số cặp key và value được chứa trong Hashtable
IsFixedSize Lấy một giá trị chỉ rằng có hay không Hashtable là có một kích cỡ cố định
IsReadOnly Lấy một giá trị chỉ rằng có hay không Hashtable là read-only
Item Lấy hoặc thiết lập giá trị được liên kết với key đã xác định
Keys Lấy một ICollection chứa các key trong Hashtable
Values Lấy một ICollection chứa các value trong Hashtable

Bảng dưới liệt kê các phương thức được sử dụng phổ biến của lớp Hashtable 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 Hashtable

2 public virtual void Clear();

Gỡ bỏ tất cả phần tử từ Hashtable

3 public virtual bool ContainsKey(object key);

Xác định có hay không Hashtable là chứa một key cụ thể

4 public virtual bool ContainsValue(object value);

Xác định có hay không Hashtable là chứa một value cụ thể

5 public virtual void Remove(object key);

Gỡ bỏ phần tử với key đã xác định từ Hashtable

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 Hashtable trong C#:

using System;
using System.Collections;namespace VietJackCsharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Vi du minh hoa Hashtable trong C#");
            Console.WriteLine("-------------------------------------");
            Hashtable ht = new Hashtable();            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:

HashTable trong C#
collection_trong_csharp.jsp