HashMap 由一个索引值找到 另外一个对象
可以用来做缓冲等

解决方案 »

  1.   

    比如这个东西,这是实际项目的代码,不必看细节(废话,谁要看)从网页前台传过来一个hashmap,见prepare函数;doit函数处理,有vector,有hashmap,最后的end()函数把hashmap传回了页面,总之,结合数据库做网页的少不了这种东西,呵呵,没功劳也有苦劳,多给我点分哦package com.rhp.chuech.process;import java.util.HashMap;
    import java.util.Vector;import com.rhp.chuech.jspcore.ProcessCall;
    import com.rhp.chuech.order.Order;
    import com.rhp.chuech.order.OrderSeries;/**
     * @author shen
     *
     * TODO To change the template for this generated type comment go to
     * Window - Preferences - Java - Code Style - Code Templates
     */
    public class SearchOrderSeries extends ProcessCall
    {    /* (non-Javadoc)
         * @see com.rhp.chuech.jspcore.ProcessCall#prepare(java.util.HashMap)
         */
        public void prepare(HashMap param)
        {
        // TODO Auto-generated method stub
          customer_id = (Integer)param.get("customer_id");
          sn = (String)param.get("serialnumber");
          this.setReturnParameter("searchinfo", param);    }    /* (non-Javadoc)
         * @see com.rhp.chuech.jspcore.ProcessCall#end()
         */
        public HashMap end()
        {
            if(order_id != null)
                this.setReturnParameter("order_id", order_id);        return this.getReturnParameter();
        }    /* (non-Javadoc)
         * @see com.rhp.chuech.jspcore.ProcessCall#doIt()
         */
        public int doIt()
        {
            Vector v;
            if(customer_id == null && sn == null)
                return 0;        StringBuffer sql = new StringBuffer("select * from orders where status >= 2 and status <=5 ");
            if(customer_id != null)
                sql.append(" and customer_id=" + customer_id);
            if(sn != null)
                sql.append(" and serialnumber='" + sn+"'");  //      sql.append(" order by orderdate desc ");        v = Order.summary(sql.toString());
            HashMap orderinfo;        if(v !=null){
               orderinfo = (HashMap)v.get(0);
               order_id=(Integer)orderinfo.get("order_id");
            }        return 0;
        }    private Integer customer_id;
        private String sn;
        private Integer order_id;
    }
      

  2.   

    TIJ第11章就是讲容器,本人看得不是很明白,看得一头雾水,还有怎样重写equals方法,才使得比较的两个对象相等。
      

  3.   


    容器类继承自object,而object类中的equals方法就是==,只有当指向同一个对象时,比较才会相等,例如
    Object a = new Object();
    b = a;a.equals(b)才返回true在容器中存放元素的时候,显然object中的equals方法不太实用因此容器类就把equals方法改写了:只要两个容器类中的元素个数、元素的的值相等,就说明这两个容器是相等的
      

  4.   

    不会没学过数据结构吧?
    最常用的:ArrayList就是动态数组,LinkedList就是链表,HashMap就是哈数表。
      

  5.   

    还觉得没用吗?
    有几个大程序即不用数组,也不用链表,也不用hash?
      

  6.   

    象你们这么说的话这些容器不就成了数据库了吗,那还要其他像SQL数据库干嘛呀?
      

  7.   

    象你们这么说的话这些容器不就成了数据库了吗,那还要其他像SQL数据库干嘛呀?——不一样的。
    容器保存临时数据,放在内存里,访问数据快。而且因为是临时数据供程序取用,不用象数据库有那么多规矩。比如我要访问某个数组元素,给个下标就行了,顶多调用一个查找方法,不用编一条SQL语句。
    我内存里头的两个数组之间也不要考虑什么完整性和依赖性。