Java 中的 Hashtable 类函数

首页 / Java入门教程 / Java 中的 Hashtable 类函数

Hashtable是原始java.util的一部分,是Dictionary的具体实现。

但是,Java 2重新设计了Hashtable,以便它也实现Map接口。因此,哈希表现在已集成到集合框架中。它类似于HashMap,担它是线程安全的synchronized。

以下是HashTable类提供的构造函数的列表。

Sr.NoConstructor & Remark
1

Hashtable()

这是化Hashtable类的哈希表的默认构造函数。

2

Hashtable(int size)

此构造函数接受一个整数参数,并创建一个具有由整数值大小指定的初始大小的哈希表。

3

Hashtable(int size,float fillRatio)

这将创建一个哈希表,该哈希表的初始大小由size指定,填充率由fillRatio指定。此比率必须在0.0到1.0之间,并且它确定哈希表在向上调整大小之前可以有多满。

4

Hashtable(Map < ? extends K, ? extends V > t)

这将使用给定的映射构造一个Hashtable。

除了Map接口定义的方法外,Hashtable还定义了以下方法-

Sr.NoMethod & Remark
1

void clear()

重置并清空哈希表。

2

Object clone()

返回调用对象的副本。

3

boolean contains(Object value)

如果哈希表中存在等于该值的值,则返回true。如果找不到该值,则返回false。

4

boolean containsKey(Object key)

如果哈希表中存在与该键相同的键,则返回true。如果找不到键,则返回false。

5

boolean containsValue(Object value)

无涯教程网

如果哈希表中存在等于该值的值,则返回true。如果找不到该值,则返回false。

6

Enumeration elements()

返回哈希表中包含的值的枚举。

7

Object get(Object key)

返回包含与键关联的值的对象。如果键不在哈希表中,则返回空对象。

8

boolean isEmpty()

如果哈希表为空,则返回true

9

Enumeration keys()

返回哈希表中包含的键的枚举。

10

Object put(Object key,Object value)

在哈希表中插入一个键和一个值。如果键尚未在哈希表中,则返回null;否则返回null。

11

void rehash()

增加哈希表的大小并重新哈希其所有键。

12

Object remove(Object key)

删除键及其值。返回与键关联的值。如果键不在哈希表中,则返回空对象。

13

int size()

返回哈希表中的条目数。

14

String toString()

返回与哈希表等效的字符串。

Hashtable 示例

以下程序说明了此数据结构支持的几种方法-

import java.util.*;
public class HashTableDemo {

   public static void main(String args[]) {
      //创建哈希映射
      Hashtable balance=new Hashtable();
      Enumeration names;
      String str;
      double bal;

      balance.put("Zara", new Double(3434.34));
      balance.put("Mahnaz", new Double(123.22));
      balance.put("Ayan", new Double(1378.00));
      balance.put("Daisy", new Double(99.22));
      balance.put("Qadir", new Double(-19.08));

      //在哈希表中显示所有余额。
      names=balance.keys();
      
      while(names.hasMoreElements()) {
         str=(String) names.nextElement();
         System.out.println(str + ": " + balance.get(str));
      }        
      System.out.println();
      
      //Deposit 1,000 into Zara's account
      bal=((Double)balance.get("Zara")).doubleValue();
      balance.put("Zara", new Double(bal + 1000));
      System.out.println("Zara's new balance: " + balance.get("Zara"));
   }
}

这将产生以下输出-

Qadir: -19.08
Zara: 3434.34
Mahnaz: 123.22
Daisy: 99.22
Ayan: 1378.0

Zara's new balance: 4434.34

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

朱赟的技术管理课 -〔朱赟〕

Java性能调优实战 -〔刘超〕

系统性能调优必知必会 -〔陶辉〕

基于人因的用户体验设计课 -〔刘石〕

大数据经典论文解读 -〔徐文浩〕

云计算的必修小课 -〔吕蕴偲〕

手把手带你搭建推荐系统 -〔黄鸿波〕

结构会议力 -〔李忠秋〕

Midjourney入门实践课 -〔Jovi〕

好记忆不如烂笔头。留下您的足迹吧 :)