JAVA容器有哪些实际的应用? HashMap 由一个索引值找到 另外一个对象可以用来做缓冲等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比如这个东西,这是实际项目的代码,不必看细节(废话,谁要看)从网页前台传过来一个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;} TIJ第11章就是讲容器,本人看得不是很明白,看得一头雾水,还有怎样重写equals方法,才使得比较的两个对象相等。 容器类继承自object,而object类中的equals方法就是==,只有当指向同一个对象时,比较才会相等,例如Object a = new Object();b = a;a.equals(b)才返回true在容器中存放元素的时候,显然object中的equals方法不太实用因此容器类就把equals方法改写了:只要两个容器类中的元素个数、元素的的值相等,就说明这两个容器是相等的 不会没学过数据结构吧?最常用的:ArrayList就是动态数组,LinkedList就是链表,HashMap就是哈数表。 还觉得没用吗?有几个大程序即不用数组,也不用链表,也不用hash? 象你们这么说的话这些容器不就成了数据库了吗,那还要其他像SQL数据库干嘛呀? 象你们这么说的话这些容器不就成了数据库了吗,那还要其他像SQL数据库干嘛呀?——不一样的。容器保存临时数据,放在内存里,访问数据快。而且因为是临时数据供程序取用,不用象数据库有那么多规矩。比如我要访问某个数组元素,给个下标就行了,顶多调用一个查找方法,不用编一条SQL语句。我内存里头的两个数组之间也不要考虑什么完整性和依赖性。 javaSE学习笔记 JAVA 继承的小问题 jtidy把html转为DOM树,并删除 html 特定标记 问一个很简单的问题啊,拜托了很困扰我 怎样给JLabel添加颜色?我菜啊~~ 有没有像vb里面FSO(FileSystemObject)对文件的操作那么方便用的java包啊? 【请问】打印字体问题?急 如何做类似与Jbuilder用户界面的界面,急。 请各位java高手几个java有关的问题? 高手们!帮帮忙呀!!! 一个不错的电脑电子书籍网站! !!请教高手-Vector与ArrayList的区别!!
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;
}
容器类继承自object,而object类中的equals方法就是==,只有当指向同一个对象时,比较才会相等,例如
Object a = new Object();
b = a;a.equals(b)才返回true在容器中存放元素的时候,显然object中的equals方法不太实用因此容器类就把equals方法改写了:只要两个容器类中的元素个数、元素的的值相等,就说明这两个容器是相等的
最常用的:ArrayList就是动态数组,LinkedList就是链表,HashMap就是哈数表。
有几个大程序即不用数组,也不用链表,也不用hash?
容器保存临时数据,放在内存里,访问数据快。而且因为是临时数据供程序取用,不用象数据库有那么多规矩。比如我要访问某个数组元素,给个下标就行了,顶多调用一个查找方法,不用编一条SQL语句。
我内存里头的两个数组之间也不要考虑什么完整性和依赖性。