Hashtable t1 = new Hashtable();
t1.put("k1","a");
t1.put("k2","b");
Hashtable t2 = new Hashtable();
t2.put("k1","c");
t2.put("k2","d");ArrayList a=new ArrayList();
a.add(t1);
a.add(t2);读的话
a.indexof(0).get("k1") 得到的是 a
a.indexof(1).get("k1") 得到的是 c
 
 

解决方案 »

  1.   

    public class KeyAndValue {    //每个value和key形成一个对象
    Object key;
    Object value;
    public KeyAndValue(Object key, Object value) {
    this.key = key;
    this.value = value;
    }
    ......
    } ......
    Hashtable tb = new Hashtable();
    ......
    ArrayList arr = new ArrayList();
    Enumeration en = tb.keys();     //取得所有的key
    while (en.hasMoreElements()) {
    Object key = en.nextElement();
    Object value = tb.get(key);    //逐个取出value
    arr.add(new KeyAndValue(key, value));  //放入ArrayList
    }
    ......
      

  2.   

    Hashtable ht = new Hashtable();
    //....
    for (Enumeration e = ht.keys(); e.hasMoreElements() ;) {
       Object key = e.nextElement();//key换成实际的类型
       Object value = ht.get(key);//value换成实际的类型
       //do other thing
    }
      

  3.   

    import java.util.*;public class hash1 {
    public static void main (String args[]) {
    Hashtable hash1 = new Hashtable();
    Enumeration enum = new Enumeration();
    int i = 0;

    hash1.put("one",new Integer(1));
    hash1.put("two",new Integer(2));
    hash1.put("three",new Integer(3));

    enum = hash1.keys();

    while (enum.hasMoreElements()) {
    Object key1 = enum.nextElement();
    Object value1 = hash1.get(key1);
    i ++;
    System.out.println("Key:" + key1 + "    " + "Value:" + value1);
    }
    System.out.println("HashTable.Size = " + i);
    }
    }