www.updatesofts.com
Bảng 4.7 Các phương thức xây dựng Hashtable.
Hashtable hash1 = new Hashtable(500,0,80);
Trong trường hợp này, Bảng băm “hash1” sẽ lưu trữ 500 phần tử. Khi bảng băm lưu trữ
vừa đầy 80% (một yếu tố nạp vào của .80), kích thước tối đa của nó sẽ được tăng lên.
Mỗi phần tử trong một hashtable bao gồm một khoá và một giá trị. Các phần tử được
thêm vào bảng băm bằng cách sử dụng phương thức put(), và được truy lục bằng cách sử
dụng phương thức get(). Các phần tử có thể được xoá từ một bảng băm với phương thức
remove(). Các phương thức contains() và containsKey() có thể được sử dụng để tra cứu
một giá trị hoặc một khoá trong bảng băm. Một vài phương thức của Hashtable được tóm
tắt trong bảng sau:
Phương thức
Mục đích
clear()
Xoá tất cả các phần tử từ bảng băm.
Clone()
Tạo một bảng sao của Hashtable.
contains(Object)
Trả về True nếu bảng băm chứa các đối tượng được
chỉ định.
ContainsKey(Object)
Trả về True nếu bảng băm chứa khoá được chỉ định.
elements()
Trả về một bảng liệt kê các yếu tố trong bảng băm.
get(Object key)
Truy lục đối tượng được kết hợp với khoá được chỉ
định.
isEmpty()
Trả về true nếu bảng băm trống.
keys()
Trả về một bảng liệt kê các khoá trong bảng băm.
put(Object, Object)
Thêm một phần tử mới vào bảng băm bằng cách sử
dụng khoá và giá trị được chỉ định.
rehash()
Thay đổi bảng băm thành một bảng băm lớn hơn.
remove(Object key)
Xoá một đối tượng được cho bởi khoá được chỉ định.
size()
Trả về số phần tử trong bảng băm.
toString()
Trả về đại diện chuỗi được định dạng cho bảng băm.
Bảng 4.8 Các phương thức lớp Hashtable.
Chương trình sau sử dụng lớp Hashtable. Trong chương trình này, tên của các tập ảnh là
các khoá, và các năm là các phần tử.
“contains” được sử dụng để tra cứu phần tử nguyên 1969, để thấy có danh sách chứa bất
kỳ các tập ảnh từ 1969.
“containsKey” được sử dụng để tìm kiếm cho khoá “Animals”, để nhìn thấy nếu tập ảnh đó
tạo nên danh sách.
Phương thức “get()”được sử dụng để truy lục tập ảnh “Wish You Were Here” có trong bảng
băm không. Phương thức get() trả về phần tử kết hợp với khoá, cả hai tên và năm được
hiển thị tại điểm này.
Chương trình 4.12
import java.util.*;
public class HashTableImplementer
{