import java.util.*;
public class HashTableTest
{
public static void main(String args[])
{
Hashtable h=new Hashtable();
h.put(new MyKey("zhangsan",18),new Integer(1));
h.put(new MyKey("lisi",15),new Integer(2));
h.put(new MyKey("wangwu",20),new Integer(3));
Enumeration e=h.keys();
while(e.hasMoreElements())
{
MyKey key=(MyKey)e.nextElement();
System.out.print(key.toString()+"=");
System.out.println(h.get(key).toString());
}

}
}
//小弟刚自学java 不知道那里出错 应该输出MyKey里存储的数据。。

解决方案 »

  1.   

    报啥错啊? 没抛错的话, 就把MyKey中的toString()方法重写一下。 输出你想要的结果
      

  2.   

    MyKey@19821f=1
    MyKey@42e816=3
    MyKey@addbf1=2
      

  3.   

    import java.util.*;public class Main {    public static void main(String args[]) {
            Hashtable<MyKey, Integer> h = new Hashtable<MyKey, Integer>();
            h.put(new MyKey("zhangsan", 18), new Integer(1));
            h.put(new MyKey("lisi", 15), new Integer(2));
            h.put(new MyKey("wangwu", 20), new Integer(3));
            Enumeration<MyKey> e = h.keys();
            while (e.hasMoreElements()) {
                MyKey key = e.nextElement();
                System.out.print(key.toString() + "=");
                System.out.println(h.get(key).toString());
            }    }
    }class MyKey {    private String name;
        private int age;    public MyKey(String name, int age) {
            this.name = name;
            this.age = age;
        }    @Override
        public String toString() {
            return "name:" + name + "\t age:" + age;//这里按你的需要来写
        }
    }
      

  4.   

    package lesson1;import java.util.*; 
    public class HashTableTest 

    public static <MyKey> void main(String args[]) 

    Hashtable h=new Hashtable(); 
    h.put(new MyKey(),new Integer(1)); 
    h.put(new MyKey(),new Integer(2)); 
    h.put(new MyKey(),new Integer(3)); 
    Enumeration e=h.keys(); 
    while(e.hasMoreElements()) 

    MyKey key=(MyKey)e.nextElement(); 
    System.out.print(key.toString()+"="); 
    System.out.println(h.get(key).toString()); 
    } } 

    结果为:
    MyKey@757aef=2
    MyKey@35ce36=1
    MyKey@d9f9c3=3