认识Dictionary类
此类已过时。新的实现应该实现 Map 接口,而不是扩展此类。
前些日子看代码,发现有许多地方用到了这个类。。。
?
一、简介
?
1、Dictionary类是任何可将键映射到相应值的类(如 Hashtable)的抽象父类。每个键和每个值都是一个对象。
?
2、在任何一个 Dictionary 对象中,每个键至多与一个值相关联。
?????给定一个 Dictionary 和一个键,就可以查找所关联的元素。任何非 null 对象都可以用作键或值。
?
3、通常,应该在此类的实现中使用 equals 方法,以决定两个键是否相同。 (-- JavaAPI文档)
?
4、一个键只能与一个值相对应,但是一个值可以有多个键。
?
?
二、Dictionay类中的方法
?
1、在Dictionay中存储对象
?
???? 在Dictionary中,pul方法使用特定的关键字来存储对象:
???? public abstrack Object put(Object key,Object value) throws NullPointarException
?
???? 用put方法返回的对象是与该关键字(名字)相联系的对象,如果没有联系,则返回null。
???? 不能将key或value设置null值,如果将null传递给这两个参数中的任意一个,将会产生NullPointerException异常。
?
2、从Dictionary中检索对象
?
???? get方法查找Dictionary和一个特定的关键字相联系的对象:
???? public abstract Object get(Object key) 如果没有和这个关键字相对应的值则返回null?
?
3、移除一个对象
???? public abstrac Object remove(Object key)
?
4、判断Dictionary中是否有元素存在
????
???? 如果Dictionary中没有对象,isEmpty方法返回true:
???? public abstract boolean isEmpty()?
?
5、判断Dictionary中元素的个数
????
???? 返回Dictionary中含有多少个“关键字-值”对:
???? public abstract int size()
?
6、返回一个枚举对象,该对象允许检查Dictionary中所有的关键字
???? public abstract Enumeration keys()?
?
7、对于Dictionary中的所有值,elements方法返回一个枚举对象
???? public abstract Enumeration elements()
?
?