使用自己的类来作为hashtable的主键

import java.util.*;
class Counter {
}
class Groundhog2 {
    int ghNumber;
    Groundhog2(int n) { ghNumber = n; }
    public int hashCode() { return ghNumber; }
    public boolean equals(Object o) {
        return (o instanceof Groundhog2)
        && (ghNumber == ((Groundhog2)o).ghNumber);
    }   
}
public class SpringDetector2 {
    public static void main(String[] args) {
        Hashtable ht = new Hashtable();
        for(int i = 0; i < 10; i++)
        ht.put(new Groundhog2(i),new Counter());
        System.out.println("ht = " + ht + "\n");
        System.out.println(
            "Looking up prediction for groundhog #3:");
        Groundhog2 gh = new Groundhog2(3);
        if(ht.containsKey(gh))
        System.out.println((Counter)ht.get(gh));
    }   
}

 

posted @ 2017-02-12 19:54  友哥  阅读(236)  评论(0编辑  收藏  举报