内部结构是哈希表,是同步的,不允许 null作为键,null作为值
用来存储键值对型的配置文件信息,可以和IO技术相结合
和 HashMap 一样的功能 只不过一个是同步的 一个不是同步的 这里的 Hashtable 不能用null作为键和值
import java.util.Hashtable;
import java.util.Iterator;
class Person
{
String name;
int age;
Person(String name,int age)
{
this.name=name;
this.age=age;
}
@Override
public int hashCode() {
//自定义哈希值
return name.hashCode()+age;
}
@Override
public boolean equals(Object obj) {
return this.name.equals(((Person) obj).name)&&this.age==((Person) obj).age;
}
}
class Main
{
public static void main(String args[])
{
Hashtable<Person,String> Hashtable=new Hashtable<Person, String>();
Hashtable.put(new Person("abc",12),"神奇");
Hashtable.put(new Person("abd",15),"abc1");
Hashtable.put(new Person("abe",17),"abc23");
Hashtable.put(new Person("abd",15),"abcccc");
Iterator<Person> i=Hashtable.keySet().iterator();
while (i.hasNext())
{
Person key=(Person) i.next();
System.out.println(key.name+".."+key.age+".."+Hashtable.get(key));
}
}
}
运行结果: