Hashtable 示例

//Demonstrate a Hashtable.
import java.util.*;
class HTDemo{
 public static void main(String[] args)
 {
  Hashtable balance = new Hashtable();
  Enumeration names;
  String strName;
  double dblBal;

  balance.put("Sue Yuan",new Double(17.15));
  balance.put("Jiahui Sheng",new Double(78777));
  balance.put("Huajiang Chen",new Double(12345.77));
  balance.put("Magic Ya",new Double(-99.10));
  balance.put("Quanbing Chen",new Double(100.00));
 
  //Show all balances in hashtable.
  names = balance.keys();
  while(names.hasMoreElements()){
   strName = (String)names.nextElement();
   System.out.println(strName  + ": " + balance.get(strName));
  }
  System.out.println();

  //Deposit 1000 into Jiahui Sheng's account
  dblBal = ((Double)balance.get("Jiahui Sheng")).doubleValue();
  balance.put("Jiahui Sheng",new Double(dblBal + 1000));
  System.out.println("Jiahui Sheng's new balance : " + balance.get("Jiahui Sheng"));
 }
}

/*

和映射类一样,Hashtable不直接支持迭代函数。因此上面的程序使用枚举来显示balance内容。我们可以获得允许使用迭代函数的散列表的集合视图。为了实现它,可以简单的使用由Map定义的一个类集“视图”方法,如entrySet()或kegSet()方法。例如,可以获得关键字的一个集合“视图”,并遍历这些关键字。下面是采用这种技术后重新编写的程序。

*/

//Use iterators with a Hashtable.
import java.util.*;
class HTDemo2{
 public static void main(String[] args)
 {
  Hashtable balance = new Hashtable();
  String strName;
  double dblBal;

  balance.put("Sue Yuan",new Double(17.15));
  balance.put("Jiahui Sheng",new Double(78777));
  balance.put("Huajiang Chen",new Double(12345.77));
  balance.put("Magic Ya",new Double(-99.10));
  balance.put("Quanbing Chen",new Double(100.00));

  //Show all balances in hashtable.
  Set set = balance.keySet();   //get set-view of keys

  //get iterator
  Iterator i = set.iterator();

  //Display elements.
  while(i.hasNext()){
   strName = (String)i.next();
   System.out.println(strName  + ": " + balance.get(strName));
  }
  System.out.println();

  //Deposit 1000 into Jiahui Sheng's account
  dblBal = ((Double)balance.get("Jiahui Sheng")).doubleValue();
  balance.put("Jiahui Sheng",new Double(dblBal + 1000));
  System.out.println("Jiahui Sheng's new balance : " + balance.get("Jiahui Sheng"));
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值