當前位置:編程學習大全網 - 源碼下載 - 紫苑超市

紫苑超市

以前學過java,做了個例子,挺值得學習的。

1.首先,我列出了我們需要的java類結構。

1)database . Java——模擬商品存儲的數據庫。

2)MC bean . Java-商品實體類,壹個普通的javabean,包含了商品的基本屬性。

3)orderitembean . Java-訂單表單。

4)shopping car . Java——這是主購物車,當然相對簡單。

5)testshoppingcar . Java——這是壹個測試類。

2.具體的代碼和關鍵的註釋貼在下面。

Database.java

公共類數據庫{

/* Map用於存儲商品數據。為什麽?我覺得這個問題需要妳自己去思考。

*整數是Map的鍵值,麥克賓是Map的value值。

*/

私有靜態地圖& lt整數,麥克賓& gtdata = new HashMap & lt整數,麥克賓& gt();

公共數據庫(){

麥克賓·比恩=新麥克賓();

bean . setid(1);

Bean.setName("紅薯");

bean . set price(2.0);

Bean.setInstuction("鮮紅薯");

data.put(1,bean);//將商品放入地圖中

bean =新麥克賓();

bean . setid(2);

bean . set name(" potato ");

bean . set price(1.2);

Bean.setInstuction("又好又大的土豆");

data.put(2,bean);//將商品放入地圖中

bean =新麥克賓();

bean . setid(3);

Bean.setName("絲瓜");

bean . set price(1.5);

Bean.setInstuction("本地絲瓜");

data.put(3,bean);//將商品放入地圖中

}

公共void setMcBean(麥克賓mcBean){

data.put(mcBean.getId(),MC bean);

}

公共麥克賓getMcBean(int nid) {

返回data . get(NID);

}

}

McBean.java

公共類麥克賓{

private int id//商品編號

私有字符串名稱;//商品名稱

私人雙倍價格;//商品價格

私有字符串指令;//商品描述

public int getId() {

返回id;

}

public void setId(int id) {

this.id = id

}

公共字符串getName() {

返回名稱;

}

public void setName(字符串名){

this.name = name

}

public double getPrice() {

退貨價格;

}

公共無效定價(雙倍價格){

this.price =價格;

}

公共字符串getinstruction(){

返回指令;

}

公共void設置指令(字符串指令){

this.instuction = instuction

}

}

ShoppingCar.java

公共類購物汽車{

私人雙倍總價;//購物車中所有商品的總價

私有int totalCount//購物車中所有商品的數量

私人地圖& lt整數,OrderItemBean & gtitemMap//商品編號和訂單項目的鍵值對

公共購物汽車(){

itemMap = new HashMap & lt整數,OrderItemBean & gt();

}

公共無效購買(國際){

OrderItemBean order = item map . get(NID);

麥克賓MB;

if (order == null) {

mb =新數據庫()。getMcBean(NID);

order = new OrderItemBean(mb,1);

itemMap.put(nid,order);

更新(nid,1);

}否則{

order . set count(order . get count()+1);

更新(nid,1);

}

}

公共void刪除(int nid) {

OrderItemBean de order = item map . remove(NID);

total count = total count-de lorder . get count();

total price = total price-de lorder . getthing()。getPrice()* delorder . get count();

}

公共void更新(int nid,int count) {

OrderItemBean up order = item map . get(NID);

total count = total count+count;

total price = total price+up order . getthing()。getPrice()* count;

}

公共void clear() {

item map . clear();

total count = 0;

totalPrice = 0.0

}

公共void show() {

DecimalFormat df =新的DecimalFormat(" #。##");

System.out.println("商品編號\ t商品名稱\ t單價\ t采購數量\ t總價");

set set = item map . keyset();

叠代器it = set . iterator();

while (it.hasNext()) {

OrderItemBean order = item map . get(it . next());

system . out . println(order . getthing()。getId() + "\t "

+ order.getThing()。getName() + "\t "

+ df.format(order.getThing()。getPrice())+" \ t "+order . get count()

+" \ t "+df . format(order . get count()* order . getthing()。getPrice()));

}

System.out.println ("total:總數量:"+df.format(totalCount)+"總價:"+df . format(total price));

system . out . println(" * * * * * * * * * * * * * * * * * * * * * * * * * * *);

}

}

OrderItemBean.java

公共類OrderItemBean {

二等兵麥克賓的事情;//商品的實體

private int計數;//商品數量

public OrderItemBean(麥克賓事物,int count) {

super();

this.thing = thing

this.count = count

}

公共麥克賓獲取(){

還東西;

}

公共空設置(麥克賓的事情){

this.thing = thing

}

public int getCount() {

返回計數;

}

public void setCount(int count) {

this.count = count

}

}

TestShoppingCar.java

包com.shop

公共類TestShoppingCar {

公共靜態void main(String[] args) {

shopping car s = new shopping car();

s . buy(1);//購買商品編號為1的商品。

s . buy(1);

s . buy(2);

s . buy(3);

s . buy(1);

s . show();//顯示購物車信息。

s . delete(1);//刪除商品編號為1的商品。

s . show();

s . clear();

s . show();

}

}

3.打印出結果

商品編號商品名稱單價購買數量總價

1紅薯2 3 6

2土豆1.2 1 1.2

3絲瓜1.5 1 1.5

合計:總數量:5元總價:8.7元

**********************************************

商品編號商品名稱單價購買數量總價

2土豆1.2 1 1.2

3絲瓜1.5 1 1.5

合計:總數量:人民幣2元總價:人民幣2.7元

**********************************************

商品編號商品名稱單價購買數量總價

總計:總數量:0總價:0

**********************************************

4.打字太累,又趕時間,但主要還是看妳懂不懂。什麽不清楚?再提壹次。

  • 上一篇:Keilarm編譯源代碼
  • 下一篇:C語言編程10選6全組合並且滿足6個數字和問題
  • copyright 2024編程學習大全網