java訂餐系統代碼,基于java語言的訂餐系統

JAVA語言編寫的網上訂餐系統購物車功能如何實現?

用Vector 或者是HashMap去裝

寧城網站制作公司哪家好,找創新互聯!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設等網站項目制作,到程序開發,運營維護。創新互聯從2013年成立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯

下面有部分代碼你去看吧

package?com.aptech.restrant.DAO;

import?java.util.ArrayList;

import?java.util.HashMap;

import?java.util.List;

import?java.util.Map;

import?java.util.Set;

import?java.sql.Connection;

import?com.aptech.restrant.bean.CartItemBean;

import?com.aptech.restrant.bean.FoodBean;

public?class?CartModel?{

private?Connection?conn;

public?CartModel(Connection?conn)?{

this.conn=conn;

}

/**

*?得到訂餐列表

*?

*?@return

*/

public?List?changeToList(Map?carts)?{

//?將Set中元素轉換成數組,以便使用循環進行遍歷

Object[]?foodItems?=?carts.keySet().toArray();

//?定義double變量total,用于存放購物車內餐品總價格

double?total?=?0;

List?list?=?new?ArrayList();

//?循環遍歷購物車內餐品,并顯示各個餐品的餐品名稱,價格,數量

for?(int?i?=?0;?i??foodItems.length;?i++)?{

//?從Map對象cart中取出第i個餐品,放入cartItem中

CartItemBean?cartItem?=?(CartItemBean)?carts

.get((String)?foodItems[i]);

//?從cartItem中取出FoodBean對象

FoodBean?food1?=?cartItem.getFoodBean();

//?定義int類型變量quantity,用于表示購物車中單個餐品的數量

int?quantity?=?cartItem.getQuantity();

//?定義double變量price,表示餐品單價

double?price?=?food1.getFoodPrice();

//?定義double變量,subtotal表示單個餐品總價

double?subtotal?=?quantity?*?price;

//?//?計算購物車內餐品總價格

total?+=?subtotal;

cartItem.setSubtotal(subtotal);

cartItem.setTotal(total);

list.add(cartItem);

}

return?list;

}

/**

*?增加訂餐

*/

public?Map?add(Map?cart,?String?foodID)?{

//?購物車為空

if?(cart?==?null)?{

cart?=?new?HashMap();

}

FoodModel?fd?=?new?FoodModel(conn);

FoodBean?food?=?fd.findFoodById(foodID);

//?判斷購物車是否放東西(第一次點餐)

if?(cart.isEmpty())?{

CartItemBean?cartBean?=?new?CartItemBean(food,?1);

cart.put(foodID,?cartBean);

}?else?{

//?判斷當前菜是否在購物車中,false表示當前菜沒有被點過。。

boolean?flag?=?false;

//?得到鍵的集合

Set?set?=?cart.keySet();

//?遍歷集合

Object[]?obj?=?set.toArray();

for?(int?i?=?0;?i??obj.length;?i++)?{

Object?object?=?obj[i];

//?如果購物車已經存在當前菜,數量+1

if?(object.equals(foodID))?{

int?quantity?=?((CartItemBean)?cart.get(object))

.getQuantity();

quantity?+=?1;

System.out.println(quantity);

((CartItemBean)?cart.get(object)).setQuantity(quantity);

flag?=?true;

break;

}

}

if?(flag?==?false)?{

//?把當前菜放到購物車里面

CartItemBean?cartBean?=?new?CartItemBean(food,?1);

cart.put(foodID,?cartBean);

}

}

return?cart;

}

/**

*?取消訂餐

*/

public?Map?remove(Map?cart,?String?foodID)?{

cart.remove(foodID);

return?cart;

}

/**

*?更新購物車信息

*?

*?@param?cart

*?@param?foodID

*?@return

*/

public?MapString,?CartItemBean?update(Map?cart,?String?foodID,

boolean?isAddorRemove)?{

Map?map;

if?(isAddorRemove)?{

map?=?add(cart,?foodID);

}?else?{

map?=?remove(cart,?foodID);

}

return?map;

}

}

java吃貨聯盟訂餐系統

ackage?cn.practice1200;

import?java.util.Scanner;

public?class?Eater_Alliance?{

/**

*?吃貨聯盟訂餐系統

*

*?@author?QCD

*?@param?args

*/

public?static?void?main(String[]?args)?{

//?TODO?Auto-generated?method?stub

Scanner?input?=?new?Scanner(System.in);

//?初始化3個數組存儲菜品、價格、點贊數

String[]?dishNames?=?{?"苦瓜炒雞蛋",?"紅燒排骨",?"辣子雞丁",?"石鍋魚",?"麻婆豆腐"?};

double[]?prices?=?{?15.0,?30.0,?35.0,?90.0,?20.0?};

int[]?praiseNums?=?new?int[5];

//?在初始化6個數組用于存儲訂單信息

String[]?names?=?new?String[5];//?保存訂餐人姓名

String[]?dishMegs?=?new?String[5];//?保存所選菜品名

int[]?dishNums?=?new?int[5];//?保存所選菜品份數

int[]?times?=?new?int[5];//?保存送餐時間

String[]?addresses?=?new?String[5];//?保存送餐地址

int[]?states?=?new?int[5];//?保存訂單狀態:0表示已預訂,1表示已完成

double[]?sumPrices?=?new?double[5];//?保存訂單的總金額

//?初始化2條訂單信息

//?第1條

names[0]?=?"王大錘";

dishMegs[0]?=?"辣子雞丁";

dishNums[0]?=?2;

times[0]?=?12;

addresses[0]?=?"莞太路3號";

states[0]?=?0;

sumPrices[0]?=?70.0;

//?第2條

names[1]?=?"王大柱";

dishMegs[1]?=?"麻婆豆腐";

dishNums[1]?=?1;

times[1]?=?19;

addresses[1]?=?"建設路2號";

states[1]?=?1;

sumPrices[1]?=?25.0;

/*?實現菜單切換?*/

System.out.println("歡迎使用“吃貨聯盟訂餐系統”");

int?num?=?1;//?用戶輸入0返回主菜單否則退出系統

boolean?isExit?=?false;//?標記用戶是否退出系統,true為退出

//?循環控制用戶輸入選擇并執行

do?{

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

System.out.println("1、我要訂餐");

System.out.println("2、查看餐袋");

System.out.println("3、簽收訂單");

System.out.println("4、刪除訂單");

System.out.println("5、我要點贊");

System.out.println("6、退出系統");

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

System.out.print("請選擇:");

num?=?input.nextInt();//?用戶輸入所要選擇進行的操作

/*?使用switch結構來建立選擇內容?*/

switch?(num)?{

case?1://?我要訂餐

System.out.println("***我要訂餐***");

boolean?isAdd?=?false;//?記錄是否可以點餐

for?(int?i?=?0;?i??names.length;?i++)?{

if?(names[i]?==?null)?{

isAdd?=?false;

System.out.print("請輸入訂餐人姓名:");

String?name?=?input.next();

System.out.println("序號"?+?"\t"?+?"菜名"?+?"\t\t"?+?"單價"?+?"\t"?+?"點贊數");

for?(int?j?=?0;?j??dishNames.length;?j++)?{

System.out.println(

(j?+?1)?+?"\t"?+?dishNames[j]?+?"\t\t"?+?prices[j]?+?"元"?+?"\t"?+?praiseNums[j]);

}

System.out.print("請選擇您要點的菜品編號:");

int?chooseDish?=?input.nextInt();

String?dishMeg?=?dishNames[chooseDish?-?1];

System.out.print("請選擇您需要的份數:");

int?number?=?input.nextInt();

System.out.print("請輸入送餐時間(送餐時間是10點至20點間整點送餐):");

int?time?=?input.nextInt();

while?(time??10?||?time??20)?{

System.out.print("您的輸入有誤,請輸入10-20間的整數");

time?=?input.nextInt();

}

System.out.print("請輸入送餐地址:");

String?address?=?input.next();

//?默認可以預定,不用寫訂單狀態

System.out.println("訂餐成功!");

System.out.println("您定的是:"?+?dishNames[chooseDish?-?1]?+?number?+?"份");

System.out.println("送餐時間:"?+?time?+?"點");

double?sumPrice?=?prices[chooseDish?-?1]?*?number;//?計算餐費

double?sendMoney?=?(sumPrice?=?50)???0?:?5;//?計算送餐費

System.out.println("餐費:"?+?sumPrice?+?"元,"?+?"送餐費"?+?sendMoney?+?"元,"?+?"總計:"

+?(sumPrice?+?sendMoney)?+?"元。");

//?添加數據

names[i]?=?name;

dishMegs[i]?=?dishMeg;

times[i]?=?time;

dishNums[i]?=?number;

addresses[i]?=?address;

sumPrices[i]?=?sumPrice?+?sendMoney;

break;

}

if?(isAdd)?{

System.out.println("對不起,您的餐袋已滿!");

}

}

break;

case?2://?查看餐袋

System.out.println("***查看餐袋***");

System.out.println("序號\t訂餐人\t餐品名稱\t餐品數量\t送餐時間\t送餐地址\t總金額\t訂單狀態");

for?(int?i?=?0;?i??names.length;?i++)?{

if?(names[i]?!=?null)?{

String?state?=?(states[i]?==?0)???"已預訂"?:?"已完成";

System.out.println((i?+?1)?+?"\t"?+?names[i]?+?"\t"?+?dishMegs[i]?+?"\t"?+?dishNums[i]?+?"份"

+?"\t"?+?times[i]?+?"\t"?+?addresses[i]?+?"\t"?+?sumPrices[i]?+?"元"?+?"\t"?+?state);

}

}

break;

case?3://?簽收訂單

System.out.println("***簽收訂單***");

boolean?isSignFind?=?false;

System.out.print("請選擇要簽收的訂單序號:");

int?sign?=?input.nextInt();

for?(int?i?=?0;?i??names.length;?i++)?{

if?(names[i]?!=?null??states[i]?==?0??sign?==?i?+?1)?{

states[i]?=?1;

System.out.println("訂單簽收成功!");

isSignFind?=?true;//?標記已找到的訂單

}?else?if?(names[i]?!=?null??states[i]?==?1??sign?==?i?+?1)?{

System.out.println("您選擇的訂單已完成簽收,不能再次簽收!");

isSignFind?=?true;//?標記已找到的訂單

}

}

if?(!isSignFind)?{

System.out.println("您選擇的訂單不存在!");

}

break;

case?4://?刪除訂單

System.out.println("***刪除訂單***");

boolean?isDelFind?=?false;

System.out.print("請輸入要刪除的訂單序號:");

int?delID?=?input.nextInt();

for?(int?i?=?0;?i??names.length;?i++)?{

//?根據狀態值判斷能不能刪除,只有已完成的才能刪除

if?(names[i]?!=?null??states[i]?==?1??delID?==?i?+?1)?{

isDelFind?=?true;

for?(int?j?=?delID?-?1;?j??names.length?-?1;?j++)?{

names[j]?=?names[j?+?1];

dishMegs[j]?=?dishMegs[j?+?1];

dishNums[j]?=?dishNums[j?+?1];

times[j]?=?times[j?+?1];

addresses[j]?=?addresses[j?+?1];

states[j]?=?states[j?+?1];

sumPrices[j]?=?sumPrices[j?+?1];

}

//?將最后一位清空

names[names.length?-?1]?=?null;

dishMegs[names.length?-?1]?=?null;

dishNums[names.length?-?1]?=?0;

times[names.length?-?1]?=?0;

addresses[names.length?-?1]?=?null;

states[names.length?-?1]?=?0;

sumPrices[names.length?-?1]?=?0;

System.out.println("刪除訂單成功!");

break;

}?else?if?(names[i]?!=?null??states[i]?==?0??delID?==?i?+?1)?{

isDelFind?=?true;

System.out.println("您選擇的訂單未簽收,不能刪除!");

break;

}

}?//?未找到的訂單不能刪除

if?(!isDelFind)?{

System.out.println("您要刪除的訂單不存在!");

}

break;

case?5://?我要點贊

System.out.println("***我要點贊***");

//?顯示菜品信息

System.out.println("序號\t菜名\t單價");

for?(int?i?=?0;?i??dishNames.length;?i++)?{

String?priaiseNum?=?(praiseNums[i]??0)???praiseNums[i]?+?"贊"?:?"";

System.out.println((i?+?1)?+?"\t"?+?dishNames[i]?+?"\t"?+?prices[i]?+?"元"?+?priaiseNum);

}

System.out.print("請選擇您要點贊的菜品序號:");

int?number?=?input.nextInt();

praiseNums[number?-?1]++;

System.out.println("點贊成功");

break;

case?6://?退出系統

isExit?=?true;

break;

default://?退出系統

isExit?=?true;

break;

}

//?返回主界面

if?(!isExit)?{

System.out.print("輸入0返回:");

num?=?input.nextInt();

}?else?{

break;

}

}?while?(num?==?0);

System.out.println("謝謝惠顧,歡迎您再次使用!");

input.close();

}

}

Java做的PIZZA訂餐系統中碰到的問題

哈哈,兄弟,你用In.nextLine(); 你uts 的吧~

而且我猜是學31244的 rib的

只可惜看到太晚了。。。。。。

private int i;

public String toString()

{

return pizzas[i].toString();

}

能輸入其他的就怪了,因為

你返回 i = 0; 如果來得及,不明白的話直接電話我吧 零四三零一四八零八六, 自己學校的人我不會建死不救得

網站名稱:java訂餐系統代碼,基于java語言的訂餐系統
URL標題:http://m.kartarina.com/article26/heijcg.html

成都網站建設公司_創新互聯,為您提供網站收錄、外貿建站、服務器托管Google、、ChatGPT

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 国内精品无码一区二区三区| 亚洲∧v久久久无码精品| 亚洲人成无码网站| 国产丰满乱子伦无码专区| 国产日韩AV免费无码一区二区| 国产精品亚洲аv无码播放| 亚洲av永久无码天堂网| 国产AV无码专区亚洲AV毛网站| 免费无码黄十八禁网站在线观看| 亚洲Av无码专区国产乱码DVD| 精品无码国产自产在线观看水浒传| 久久久久无码国产精品不卡 | 蜜桃AV无码免费看永久| 爆乳无码AV一区二区三区| 无码不卡av东京热毛片| 国产在线拍偷自揄拍无码| 无码人妻一区二区三区免费手机| 综合国产在线观看无码| 亚洲精品无码专区2| 亚洲av无码成人精品区| 亚洲av无码电影网| 久久久久亚洲精品无码系列| 特级无码毛片免费视频| 精品无码av无码专区| 亚洲爆乳AAA无码专区| 久久久久久AV无码免费网站 | 亚洲精品无码久久久久去q| 国产成人无码A区精油按摩| 精品无码无人网站免费视频| 人妻丰满熟妇岳AV无码区HD| 国产亚洲精久久久久久无码77777 国产在线无码精品电影网 | 亚洲国产成人无码AV在线| 亚洲人成人无码.www石榴| 无码AV片在线观看免费| 亚洲av无码一区二区三区观看| 亚洲国产成人片在线观看无码| 办公室丝袜激情无码播放| 国产高清无码毛片| 亚洲人成无码www久久久| 一级片无码中文字幕乱伦| 人妻无码一区二区视频|