都toString()了,我怎么取hashtable中的每个字段的数据呢?

解决方案 »

  1.   

    toString()只是Hashtable对象的字符串表示形式,你取值还是从hashtable中取啊
      

  2.   

    toString()是覆盖的object类的方法,返回该类的字符串形式
    你想取hashtable中的每个字段的数据可以拿出key,再拿valueHashtable hashTable = new Hashtable();
    Collection keys = hashTable.keySet();//拿出所有的key,根据key拿value
    Iterator it = keys.iterator();
    while(it.hasNext()){
      Object key = it.next();
      System.out.print("key:"+key);
      System.out.println("\tvalue:"+hashTable.get(key));
    }
      

  3.   


     Hashtable<String, String> hs = new Hashtable<String, String>();
            hs.put(
                "hello",
                "world!");
            Iterator<Entry<String, String>> i = hs.entrySet().iterator();
            while(i.hasNext()) {
                Entry<String, String> e = i.next();
                System.out.println("key:"+e.getKey()+"  value:"+e.getValue());
            }
      

  4.   

    不好意思,是我没说清楚,是这样的。我的意思是 JAVA文件查询出结果集,存在hashtable中,然后
    PrintWriter out = res.getWriter();
    out.println(hashtable.tostring());返到前台,我就不会取了   
    我的程序是这样取的,我不太明白
    var rows = eval("(" + o.responseText + ")");
    好像用了ajax
        
      

  5.   

     Iterator<Entry<String, String>>  这句不明白啥意思,anqini给解释下。没这么用过。。
      

  6.   

    hashtable的tostring不重写的话只会输出当前的对象类型,没用的
    取值有专门的方法
      

  7.   

    Entry <String, String>表示键-值对
    Iterator 声明使用了泛型,尖括号中表示此Iterator 只接收类型为Entry 的数据
      

  8.   

    java.util.Map.Entry<K,V>
    kye,value一对对象,map中是以这种格式存在的
      

  9.   

    Entry <String, String>表示键-值对 
    Iterator 声明使用了泛型,尖括号中表示此Iterator 只接收类型为Entry 的数据