java成绩分类汇总_关于分类汇总的一个常见技巧

packagecom.sitinspring;importjava.io.BufferedWriter;importjava.io.FileWriter;importjava.io.IOException;importjava.util.ArrayList;importjava.util.Hashtable;importjava.util.List;/*** 货栈进货记录

*

*@author: sitinspring(junglesong@gmail.com)

* @date: 2007-11-25*/publicclassStockHouseMemo {//水果批次记录privateListfruits;//统计信息privateHashtablefruitSumaries;/*** 添加水果批次记录

*

*@paramfruit*/publicvoidaddFruit(Fruit fruit) {//添加批次记录if(fruits==null) {

fruits=newArrayList();

}

fruits.add(fruit);//添加统计记录if(fruitSumaries==null) {

fruitSumaries=newHashtable();

}

String fruitType=fruit.getType();//取出同类型的统计信息FruitSumary sumaryFound=findSummaryByType(fruitType);if(sumaryFound!=null) {//有记录sumaryFound.setCount(sumaryFound.getCount()+fruit.getCount());

sumaryFound.setPrice(sumaryFound.getPrice()+fruit.getUnitPrice()*fruit.getCount());

}else{//无记录fruitSumaries.put(fruitType,newFruitSumary(fruit.getType(),

fruit.getCount(), fruit.getUnitPrice()*fruit.getCount()));

}

}/*** 取得和fruitInput类型对应的统计信息记录

*

*@paramfruitInput

*@return*/privateFruitSumary findSummaryByType(String fruitType) {if(fruitSumaries.containsKey(fruitType)){returnfruitSumaries.get(fruitType);

}returnnull;

}/*** 取得水果进货详细信息

*

*@return*/publicString getDetailFruitInfo() {

String retval="----------水果进货详细信息-----------\r\n";for(Fruit fruit : fruits) {

retval+=fruit;//等于fruit.toString()}

retval+="----------------------------------------";returnretval;

}/*** 取得水果进货统计信息

*

*@return*/publicString getSummaryFruitInfo() {

String retval="----------水果进货统计信息-----------\r\n";for(FruitSumary fruitSumary : fruitSumaries.values()) {

retval+=fruitSumary;//等于fruitSumary.toString()}

retval+="----------------------------------------";returnretval;

}publicvoidwriteToFile(String fileName) {try{

BufferedWriter out=newBufferedWriter(newFileWriter(fileName));

String outputText=getDetailFruitInfo()+"\r\n";

outputText+=getSummaryFruitInfo();

out.write(outputText);

out.close();

}catch(IOException e) {

e.printStackTrace();

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值