站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题求救: java 使用关键字类从Hashtable中取值(课本中的错误?)

求救: java 使用关键字类从Hashtable中取值(课本中的错误?)

摘要: 求救: java 使用关键字类从Hashtable中取值(课本中的错误?)


谁能帮我修改下面的代码,达到:
使用Mykey类作为关键字类,从Hashtable中取出所有关键字的集合和取出所有值的集合?(我用的是JDK5.0.9,要考虑到泛型.)

import java.util.*;

class Mykey
{
private String name;
private int age;
public Mykey(String name,int age)
{
this.name=name;
this.age=age;
}
public String toString()
{
return new String(name+","+age);
}
public boolean equals(Object obj)
{
if(name.equals(obj.name) && age==obj.age)
return true;
else
return false;
}
public int hashCode()
{
return name.hashCode()+age;
}
}

public class HashtableTest
{
public static void main(String []args)
{
Hashtable numbers=new Hashtable();
numbers.put(new Mykey("zhang san",18),new Integer(11));
numbers.put(new Mykey("lisi",15),new Integer(22));
numbers.put(new Mykey("wangwu",12),new Integer(33));
Enumeration e=numbers.keys();
while(e.hasMoreElements())
{
Mykey key=(Mykey)e.nextElement();
System.out.println(key.toString()+"=");
System.out.println(numbers.get(key).toString());
}
}
}


import java.util.*;

class Mykey
{
private String name;
private int age;
public Mykey(String name,int age)
{
this.name=name;
this.age=age;
}
public String toString()
{
return new String(name+","+age);
}
public boolean equals(Mykey obj)
{
if(name.equals(obj.name) && age==obj.age)
return true;
else
return false;
}
public int hashCode()
{
return name.hashCode()+age;
}
}

public class HashtableTest
{
public static void main(String []args)
{
Hashtable numbers=new Hashtable();
numbers.put(new Mykey("zhang san",18),new Integer(11));
numbers.put(new Mykey("lisi",15),new Integer(22));
numbers.put(new Mykey("wangwu",12),new Integer(33));
Enumeration e=numbers.keys();
while(e.hasMoreElements())
{
Mykey key=(Mykey)e.nextElement();
System.out.println(key.toString()+"=");
System.out.println(numbers.get(key).toString());
}
}
}


下面是执行的结果:
lisi,15=
22
zhang san,18=
11
wangwu,12=
33


妙! 原来是这样呀,我真是傻到家了~~~~老犯这种愚蠢的错误.

谢谢你的帮助!


↑返回目录
前一篇: 求助:javax.comm.*
后一篇: 各位大虾:怎么统计给定文件中每个字母中出现的频率!!!