java的hashtable的用法

java的hashtable的用法

ID:34417223

大小:24.79 KB

页数:6页

时间:2019-03-05

java的hashtable的用法_第1页
java的hashtable的用法_第2页
java的hashtable的用法_第3页
java的hashtable的用法_第4页
java的hashtable的用法_第5页
资源描述:

《java的hashtable的用法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、java的hashtable的用法(1)Vector允许我们用一个数字从一系列对象中作出选择,所以它实际是将数字同对象关联起来了。但假如我们想根据其他标准选择一系列对象呢?堆栈就是这样的一个例子:它的选择标准是“最后压入堆栈的东西”。这种“从一系列对象中选择”的概念亦可叫作一个“映射”、“字典”或者“关联数组”。从概念上讲,它看起来象一个Vector,但却不是通过数字来查找对象,而是用另一个对象来查找它们!这通常都属于一个程序中的重要进程。在Java中,这个概念具体反映到抽象类Dictionary身上。该类的接口是非常直观的size()告

2、诉我们其中包含了多少元素;isEmpty()判断是否包含了元素(是则为true);put(Objectkey,Objectvalue)添加一个值(我们希望的东西),并将其同一个键关联起来(想用于搜索它的东西);get(Objectkey)获得与某个键对应的值;而remove(ObjectKey)用于从列表中删除“键-值”对。还可以使用枚举技术:keys()产生对键的一个枚举(Enumeration);而elements()产生对所有值的一个枚举。这便是一个Dictionary(字典)的全部。Dictionary的实现过程并不麻烦。下面列出

3、一种简单的方法,它使用了两个Vector,一个用于容纳键,另一个用来容纳值://:AssocArray.java//SimpleversionofaDictionaryimportjava.util.*;publicclassAssocArrayextendsDictionary{privateVectorkeys=newVector();privateVectorvalues=newVector();publicintsize(){returnkeys.size();}publicbooleanisEmpty(){returnkeys.

4、isEmpty();}publicObjectput(Objectkey,Objectvalue){keys.addElement(key);values.addElement(value);returnkey;}publicObjectget(Objectkey){intindex=keys.indexOf(key);//indexOf()Returns-1ifkeynotfound:if(index==-1)returnnull;returnvalues.elementAt(index);}publicObjectremove(Obj

5、ectkey){intindex=keys.indexOf(key);if(index==-1)returnnull;keys.removeElementAt(index);Objectreturnval=values.elementAt(index);values.removeElementAt(index);returnreturnval;}publicEnumerationkeys(){returnkeys.elements();}publicEnumerationelements(){returnvalues.elements()

6、;}//Testit:publicstaticvoidmain(String[]args){AssocArrayaa=newAssocArray();for(charc='a';c<='z';c++)aa.put(String.valueOf(c),String.valueOf(c).toUpperCase());char[]ca={'a','e','i','o','u'};for(inti=0;i

7、[i])));}}///:~在对AssocArray的定义中,我们注意到的第一个问题是它“扩展”了字典。这意味着AssocArray属于Dictionary的一种类型,所以可对其发出与Dictionary一样的请求。如果想生成自己的Dictionary,而且就在这里进行,那么要做的全部事情只是填充位于Dictionary内的所有方法(而且必须覆盖所有方法,因为它们——除构建器外——都是抽象的)。Vectorkey和value通过一个标准索引编号链接起来。也就是说,如果用“roof”的一个键以及“blue”的一个值调用put()——假定我们

8、准备将一个房子的各部分与它们的油漆颜色关联起来,而且AssocArray里已有100个元素,那么“roof”就会有101个键元素,而“blue”有101个值元素。而且要注意一下get(),假如

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。