Nội dung
FaCode Ngôn ngữ Java Hashtable trong Java
Những điểm quan trọng về lớp Hashtable trong java là:
- Hashtable là một mảng của list. Mỗi list được biết đến như một xô chứa các phần tử. Vị trí của một số được xác định bằng việc gọi phương thức hashcode(). Hashtable cũng lưu trữ dữ liệu dưới dạng cặp key và value.
- Nó chứa các key duy nhất.
- Nó KHÔNG thể có bất kỳ key hoặc giá trị nào là null.
- Nó được đồng bộ.
Sự khác nhau giữa HashMap và Hashtable
Đây cũng là một câu hỏi phỏng vấn được hỏi với tần suất cao. Xem chi tiết tại đây sự khác nhau giữa HashMap và Hashtable.
Hierarchy của lớp Hashtable
Khai báo của lớp Hashtable
Dưới đây là khai báo của lớp java.util.Hashtable trong java
Trong đó:
- K: đây là kiểu key để lưu trữ.
- V: đây là kiểu giá trị được ánh xạ.
Ví dụ về Hashtable trong java
Ví dụ 1: Sử dụng phương thức remove().
Kết quả:
Code:
package vn.facode.collection;
import java.util.Hashtable;
import java.util.Set;
public class HashTableExample1 {
/**
* main
*
* @author facode.vn
* @param args
*/
public static void main(String args[]) {
// init hashtable
Hashtable<Integer, String> hashtable = new Hashtable<Integer, String>();
// add elements to hashtable
hashtable.put(3, "C++");
hashtable.put(1, "Java");
hashtable.put(2, "PHP");
hashtable.put(4, "Python");
// show hashtable
show(hashtable);
// remove element
hashtable.remove(2);
// show hashtable after remove
System.out.println("After remove:");
// show hashtable
show(hashtable);
}
/**
* show HashMap
*
* @param facode.vn
*/
public static void show(Hashtable<Integer, String> hashtable) {
Set<Integer> keySet = hashtable.keySet();
for (Integer key : keySet) {
System.out.println(key + " " + hashtable.get(key));
}
}
}
Ví dụ 2: Hashtable với key có kiểu String, value có kiểu Student.
Lớp Student.java
Code:
/**
* Student class
*
* @author facode.vn
*/
public class Student{
private String name;
private int age;
private String address;
public Student() {
}
public Student(String name, int age, String address) {
super();
this.name = name;
this.age = age;
this.address = address;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Student@name=" + name + ",age=" + age + ",address=" + address;
}
}
File:
Kết quả:
Code:
package vn.facode.collection;
import java.util.Hashtable;
import java.util.Set;
public class HashTableExample2 {
/**
* main
*
* @author facode.vn
* @param args
*/
public static void main(String args[]) {
// init hashMap
Hashtable<String, Student> hashMap = new Hashtable<String, Student>();
// add elements to hashMap
hashMap.put("1", new Student("A", 12, "Hanoi"));
hashMap.put("3", new Student("C", 13, "Hanoi"));
hashMap.put("2", new Student("E", 15, "Hanoi"));
hashMap.put("4", new Student("D", 14, "Hanoi"));
// show hashMap
show(hashMap);
}
/**
* show HashMap
*
* @param facode.vn
*/
public static void show(Hashtable<String, Student> hashtable) {
Set<String> keySet = hashtable.keySet();
for (String key : keySet) {
System.out.println(key + " " + hashtable.get(key));
}
}
}
___________________________________
______________
7 Java frameworks phổ biến nhất hiện nay
________
FaCode là một seri học tập lập trình, lần này là FaCode ngôn ngữ Java, bằng mọi nỗ lực FaCode sẽ hoàn thành các mục tiêu đề ra trong FaCode Ngôn ngữ Java. Hãy đồng hành cùng FaCode Ngôn ngữ Java và theo dõi chúng tôi nhé. FaCode Ngôn ngữ Java rất mong nhận được lời góp ý từ phía cộng đồng. Share4Happy với phương châm chia sẻ để hạnh phúc.