当前位置: 代码迷 >> Java相关 >> HashMap无法显示。show()解决思路
  详细解决方案

HashMap无法显示。show()解决思路

热度:6271   发布时间:2013-02-25 21:51:53.0
HashMap无法显示。。show()
package max.dao;
import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Iterator;

import max.model.bean;

import com.sun.tools.classfile.Opcode.Set;
import com.sun.xml.internal.xsom.impl.scd.Iterators.Map;


public class sqlbean {

private HashMap<Integer, bean> itemMap;
public sqlbean()
{
itemMap = new HashMap<Integer, bean>();

}

public void put(Integer id,bean tempi){

itemMap.put(id, tempi);



}

public void delete(Integer id){

itemMap.remove(id);


}





public void clear() {
itemMap.clear();

}





public void show() {








Iterator<Integer> it = itemMap.keySet().iterator();

while(it.hasNext()) {
Integer key = it.next();
 
 
 
 
 
System.out.println("<tr>");
System.out.println("<td bgcolor='#f4f5fd' colspan='14' height='5'></td>");
System.out.println("</tr>");
System.out.println("<tr>");
System.out.println("<td align='right' bgcolor='#ffffff'><input type='checkbox' name='<%=r %>'onClick='changeTRbg(this,'trBG<%=r %>>')'/></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= year %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= sea %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= bre%></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= Sty %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= Sty %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= yhcolo %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= hfcolor %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= colord %></td>");
System.out.println("<td align='right' bgcolor='#ffffff'><%= Rhy %></td>");
System.out.println("</tr>");
 
 

}




}













}

------解决方案--------------------------------------------------------
Java code
import java.util.*;public class TestShoppingCar {    public static void main(String[] args) {    ShoppingCar s = new ShoppingCar();    s.buy(1);// 购买商品编号1的商品    s.buy(1);//其实放不进去,因为id是区分每一个商品,而不是每一类商品    s.buy(2);// 购买商品编号2的商品    s.buy(3);// 购买商品编号3的商品    s.buy(1);//其实放不进去,因为id是区分每一个商品,而不是每一类商品    //s.show();//这句没任何用处        Iterator<Integer> it = s.show();    while (it.hasNext()) {        Integer key = it.next();        Bean bean = s.sqlbean.get(key);        System.out.println(bean);    }    }}class ShoppingCar {    Sqlbean sqlbean = new Sqlbean();    public void buy(int id) {    if(sqlbean.containsKey(id)) {        System.out.println("id为" +id +"的商品已经存在");;//每一个商品都有唯一的id,如果商品id已经存在,,就再也放不进去了        return;    }    sqlbean.put(id,Bean.createBean(id));        }    public Iterator<Integer> show() {    return sqlbean.show();    }}class Bean {    private int id = 0;    private String otherInfo;    public Bean(int id) {    this.id = id;    }    public int getId() {        return id;    }    public static Bean createBean(int id) {    return new Bean(id);    }    public String toString() {//重写toString方法,方便打印    return "id = " +  id;    }}class Sqlbean {    private HashMap<Integer, Bean> itemMap;//假设每一个商品一个id,及每一个id代表一个商品    public Sqlbean() {//此时 健id 的值 为Bean类商品 ,    itemMap = new HashMap<Integer, Bean>();    }    public void put(Integer id, Bean tempi) {    if(itemMap.containsKey(id)) {        System.out.println(tempi +"的商品已经存在");;//每一个商品都有唯一的id,如果商品id已经存在,,就再也放不进去了        return;    }    itemMap.put(id,tempi);       }    public Bean get(int id) {//增加这个方法,因为itemMap是private,否则别的类无法访问Mapz中的Bean对象    return itemMap.containsKey(id)?itemMap.get(id):null;    }        public boolean containsKey(int id) {    return itemMap.containsKey(id);    }    public void delete(Integer id) {    itemMap.remove(id);    }            public void clear() {    itemMap.clear();    }    public Iterator show() {//返回值应该为Iterator,否则此函数形同虚设    return itemMap.keySet().iterator();    }}
  相关解决方案