日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Java基于字符界面的簡易收銀臺

瀏覽:28日期:2022-08-09 17:45:51

用Java實現簡易收銀臺,供大家參考,具體內容如下

簡易收銀臺的實現并不難,主要實現這幾個類:

商品類 Goods (將商品根據編號,名稱,價格存放) 商品中心類 GoodsCenter (存放商品,可以添加商品,下架商品,修改商品信息,判斷商品是否存在或者貨架已滿,打印商品等功能) 訂單類 Order (處理訂單,主要實現買單功能,下單,計算總價) 功能實現

初始化界面

Java基于字符界面的簡易收銀臺

商品上架

Java基于字符界面的簡易收銀臺

修改商品信息

Java基于字符界面的簡易收銀臺

下架商品

Java基于字符界面的簡易收銀臺

返回并進入買單功能

Java基于字符界面的簡易收銀臺

選擇商品及數量進行買單

Java基于字符界面的簡易收銀臺

取消訂單

Java基于字符界面的簡易收銀臺

查看訂單

Java基于字符界面的簡易收銀臺

返回并退出

Java基于字符界面的簡易收銀臺

功能分析

Java基于字符界面的簡易收銀臺

代碼展示

package com.bittech; import java.time.LocalDate;import java.util.Scanner; /** * Author:weiwei * description: * Creat:2019/5/5 **/public class CheckStand { public static Scanner scanner = new Scanner(System.in); public static void helpInfo() {System.out.println('==============歡迎使用簡易收銀臺=============');System.out.println(' [U]使用 [S]設置 [A]關于 [Q]退出 ');System.out.println(' 輸入 U S A Q 進行操作 ');System.out.println('============================================'); } public static void quit() {System.out.println('===========================================');System.out.println('歡迎下次使用');System.out.println('===========================================');System.exit(0); } public static void usageInfo() {System.out.println('================買單功能====================');System.out.println(' [S]查看 [A]下單 [D]取消 [L]瀏覽 [R]返回');System.out.println(' 輸入 S A D L R 進行操作 ');System.out.println('==========================================='); } public static void about() {System.out.println('==================關于=====================');System.out.println(' 名稱:簡易收銀臺 ');System.out.println(' 功能:基于字符界面的收銀臺操作 ');System.out.println(' 作者:weiwei ');System.out.println(' 版本:v0.0.1 ');System.out.println(' 意見反饋:liusz0501@163.com ');System.out.println('=========================================='); } public static void settingInfo() {System.out.println('=================設置功能==================');System.out.println(' [S]查看 [A]上架 [D]下架 [U]修改 [R]返回 ');System.out.println(' 輸入 S A D U R 進行操作 ');System.out.println('==========================================='); } public static void usage() {usageInfo();GoodsCenter.printGoods();Order order = new Order();while(true){ String line = scanner.nextLine(); switch(line.trim()){case 'S':{ order.printOrder(); break;}case 'A':{ System.out.println('請輸入下單信息[編號][數量] (格式如:1 2 ):'); String value = scanner.nextLine(); String[] infoArray = value.split(' '); if(infoArray != null && (infoArray.length == 2)){Goods goods = GoodsCenter.getGoods(Integer.parseInt(infoArray[0]));if(goods != null){ order.add(goods,Integer.parseInt(infoArray[1])); order.printOrder(); break;} } System.out.println('請按照格式要求輸入信息'); break;}case 'D':{ System.out.println('請輸入取消信息[編號 數量](如下格式:1 2 ):'); String value = scanner.nextLine(); String[] infoArray = value.split(' '); if (infoArray != null && (infoArray.length == 2)) {Goods goods = GoodsCenter.getGoods(Integer.parseInt(infoArray[0]));if (goods != null) { order.cance(goods, Integer.parseInt(infoArray[1])); order.printOrder(); break;} } System.out.println('請按照格式要求輸入信息'); break;}case 'L': { GoodsCenter.printGoods(); break;}case 'R': { return;}default: { usageInfo();} }} } public static void setting() {settingInfo();if (GoodsCenter.isFull()) { System.out.println('!當前商品貨架已經滿了,如果要進行添加請下降部分商品');}while (true) { String line = scanner.nextLine(); switch (line.toUpperCase()) {case 'S': { GoodsCenter.printGoods(); break;}case 'A': { System.out.println('請輸入上架商品信息(如下格式:1 餐巾紙 1.4):'); Goods goods = readGoods(); if (goods == null) {System.out.println('!請按照格式要求輸入信息');break; } if (GoodsCenter.isFull()) {System.out.println('!當前商品貨架已經滿了,如果要進行添加請下降部分商品'); } else if (GoodsCenter.isExist(goods)) {System.out.println('!上架商品已經存在,注意編號不能重復'); } else {GoodsCenter.addGoods(goods);GoodsCenter.printGoods(); } break;}case 'D': { System.out.println('請輸入下架商品信息編號(如下格式:1 ):'); Goods goods = readGoods(); if (goods == null) {System.out.println('請按照格式要求輸入信息');break; } if (GoodsCenter.isPutaway(goods)) {GoodsCenter.soldOutGoods(goods);GoodsCenter.printGoods(); } else {System.out.println('請選擇上架的商品編號,當前下架商品未設置'); } break;}case 'U': { System.out.println('請輸入修改商品信息(如下格式:1 餐巾紙 1.4 )'); Goods goods = readGoods(); if (goods == null) {System.out.println('請按照格式要求輸入信息');break; } if (GoodsCenter.isPutaway(goods)) {GoodsCenter.modifyGoods(goods);GoodsCenter.printGoods(); } else {System.out.println('請選擇上架的商品編號,當前修改商品未設置'); } break;}case 'R': { return;}default: { settingInfo();} }} } public static Goods readGoods() {String value = scanner.nextLine();String[] infoArray = value.split(' ');if (infoArray != null && (infoArray.length == 3 || infoArray.length == 1)) { if (infoArray.length == 3) {Goods goods = new Goods(Integer.parseInt(infoArray[0]), infoArray[1], Double.parseDouble(infoArray[2]));return goods; } if (infoArray.length == 1) {Goods goods = new Goods(Integer.parseInt(infoArray[0]), '', 0.0D);return goods; }}return null; } public static void main(String[] args) {helpInfo();while (true) { String line = scanner.nextLine(); switch (line.trim().toUpperCase()) {case 'U': usage(); helpInfo(); break;case 'S': setting(); helpInfo(); break;case 'A': about(); break;case 'Q': quit(); break;default: helpInfo(); }} }}

GoodsCenter類

class GoodsCenter { //商品占位符 private static String placeholder = '--'; //最大商品數量 private static int maxGoods = 10; //商品容器 private static Goods[] goodsArray; //初始化商品容器 static {goodsArray = new Goods[maxGoods];for (int i = 0; i < goodsArray.length; i++) { goodsArray[i] = new Goods(i + 1, '--', 0.0D);} } private GoodsCenter() { } public static int getMaxGoods() {return maxGoods; } //添加商品 public static void addGoods(Goods goods) {for (int i = 0; i < goodsArray.length; i++) { Goods temp = goodsArray[i]; if (temp.getId() == goods.getId()) {temp.setName(goods.getName());temp.setPrice(goods.getPrice());break; }} } //下架商品 public static void soldOutGoods(Goods goods) {for (int i = 0; i < goodsArray.length; i++) { Goods temp = goodsArray[i]; if (temp.getId() == goods.getId()) {temp.setName(placeholder);temp.setPrice(0.0D);break; }} } //修改商品 public static void modifyGoods(Goods goods) {for (int i = 0; i < goodsArray.length; i++) { Goods temp = goodsArray[i]; if (temp.getId() == goods.getId()) {temp.setName(goods.getName());temp.setPrice(goods.getPrice());break; }} } //商品是否存在 public static boolean isExist(Goods goods) {for (int i = 0; i < goodsArray.length; i++) { Goods temp = goodsArray[i]; if (temp.getId() == goods.getId() && temp.getName().equals(goods.getName())) {return true; }}return false; } //商品位是否存在商品 public static boolean isPutaway(Goods goods) {for (int i = 0; i < goodsArray.length; i++) { Goods temp = goodsArray[i]; if (temp.getId() == goods.getId() && !temp.getName().equals(placeholder)) {return true; }}return false; } //商品已滿 public static boolean isFull(){for(int i =0;i<goodsArray.length;i++){ if(goodsArray[i].getName().equals(placeholder)){return false; }}return true; } public static Goods getGoods(int id){for(int i = 0;i<goodsArray.length;i++){ Goods temp = goodsArray[i]; if(temp.getId() == id && !temp.getName().equals(placeholder)){return goodsArray[i]; }}return null; } //打印商品 public static void printGoods(){System.out.println('=============商品清單================');System.out.println('t' + '編號' + 't' +'產品名稱' + 't' + '單價');for(int i = 0;i<goodsArray.length;i++){ Goods temp = goodsArray[i]; String name = temp.getName(); if(name.equals(placeholder)){name = name + '[未上架]'; } System.out.println('t' + temp.getId() + 't' + temp.getName() + 't' + temp.getPrice());}System.out.println('========================================='); }}

Goods類

class Goods{ //商品編號 private int id; //商品名稱 private String name; //商品價格 private double price; public Goods(int id,String name,double price){this.id = id;this.name = name;this.price = price; } public int getId(){return this.id; } public int getIndex(){return this.getId()-1; } public String getName(){return this.name; } public void setName(String name) {this.name = name; } public double getPrice(){return this.price; } public void setPrice(double price) {this.price = price; } @Override public String toString(){return String.format('[%2d] %s %.2f',this.getId(),this.getName(),this.getPrice()); }}

Order類

class Order{ private static int orderId = 0; private int id; private Goods[] items; private int[] itmesNumber; private int currentIndex; public Order(){this.id = ++orderId;this.items = new Goods[GoodsCenter.getMaxGoods()];this.itmesNumber = new int[GoodsCenter.getMaxGoods()];this.currentIndex = -1; } public void add(Goods goods,int count){int index = goods.getIndex();this.items[index] = goods;this.itmesNumber[index] += count; } public void cance(Goods goods,int count){int index = goods.getIndex();int value = this.itmesNumber[index]-count;if(value > 0){ this.itmesNumber[index] = value;}else{ this.items[index] = null; this.itmesNumber[index] = 0;} } public int getSize(){return this.currentIndex+1; } public double getTotalPrice(){double tatalPrivce = 0;for(int i =0;i<this.items.length;i++){ Goods goods = this.items[i]; if(goods != null){tatalPrivce += (this.itmesNumber[goods.getIndex()] * goods.getPrice()); }}return tatalPrivce; } public int getId(){return this.id; } public void printOrder(){System.out.println('========================');System.out.println('編號' + this.getId() );System.out.println('打印時間' + LocalDate.now().toString());System.out.println('========================');System.out.println('編號 名稱 數量 單價');for(int i = 0;i<this.items.length;i++){ Goods goods = this.items[i]; if(goods != null){int count = this.itmesNumber[goods.getIndex()];if(count <= 0){ continue;}System.out.println(String.format('%2dt%st%dt%.2f',goods.getId(),goods.getName(),count,goods.getPrice() )); }}System.out.println('=========================');System.out.println(String.format('總價:%2f',this.getTotalPrice()));System.out.println('========================='); }}項目總結 用常用String類,Scanner類實現,代碼量不多,簡單易懂 有弊端存在,就是用數組存放商品,容易出現數組越界異常,而且如果商品多的話用數組存儲也是極其不方便的 還有就是未使用到數據庫,商品信息,訂單信息的保存有很多不方便的地方,如果建立連接了數據庫,這個問題就解決了

目前能力只能實現到這了,希望可以再努力一下,將數據庫加入到項目中,讓它的易用性再提升更多。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
午夜久久免费观看| 成人在线免费观看网站| 久久国产精品99国产| 在线看片日韩| 中文字幕成在线观看| 99久久婷婷| 日韩在线观看一区二区三区| 久久精品二区亚洲w码| av中文资源在线资源免费观看| 午夜av一区| 欧美片第1页| 91中文字幕精品永久在线| 久久久久久夜| 福利片在线一区二区| 免费黄网站欧美| 日本aⅴ免费视频一区二区三区| 精品国产亚洲一区二区三区大结局| 久久蜜桃av| 国产欧美日韩一级| 久久视频一区| 色吊丝一区二区| 欧洲av一区二区| 在线亚洲激情| 日本中文字幕一区二区视频| 国产精品免费99久久久| 国产精品国产一区| 成人三级高清视频在线看| 四虎4545www国产精品| 亚洲欧美日韩国产一区二区| 国产精品一区二区精品| 久久精品欧美一区| 日本一区中文字幕| 国产精品久久久久av电视剧| 综合亚洲色图| 免费在线小视频| 男人操女人的视频在线观看欧美| 亚洲少妇在线| 国产欧美日韩精品一区二区免费| 免费国产亚洲视频| 日产午夜精品一线二线三线| 丝袜亚洲精品中文字幕一区| 日韩av片子| 国产日韩欧美一区二区三区在线观看| 99成人超碰| 日韩1区2区| 国产精品网站在线看| 香蕉精品999视频一区二区| 欧洲av一区二区| 精品欧美视频| 欧美精品国产白浆久久久久| 综合国产精品| 日本亚洲视频在线| 亚洲成人二区| 99香蕉国产精品偷在线观看| 日韩亚洲精品在线观看| 亚洲精品伊人| 欧美综合另类| 视频在线观看一区| 日本aⅴ免费视频一区二区三区| 日本成人精品| 久久99蜜桃| 久久激五月天综合精品| 成人片免费看| 欧美肉体xxxx裸体137大胆| 狠狠色综合网| 亚洲成人va| 欧美午夜不卡| 国产情侣一区| 欧美精选一区二区三区| 婷婷亚洲综合| 欧美日韩a区| 老司机久久99久久精品播放免费| 樱桃视频成人在线观看| 欧美精品不卡| 亚洲成人一区在线观看| 日韩欧美四区| 国产乱码精品一区二区三区四区| 精品一区二区三区亚洲 | 不卡福利视频| 久久av电影| 欧美91在线| 日韩国产在线| 国产激情精品一区二区三区| 欧美日韩1区2区3区| 岛国精品一区| 日韩精品乱码av一区二区| 日韩欧美网址| 野花国产精品入口| 久久99国产精品视频| 亚洲高清二区| 日韩精品久久久久久久软件91| 国产精品蜜芽在线观看| 欧美黑人巨大videos精品| 久久精品亚洲人成影院| 免费日韩成人| 国产欧美另类| 欧美特黄一区| 免费一级片91| 亚洲深夜福利在线观看| 婷婷五月色综合香五月| 国产亚洲久久| 久久国产电影| 国产情侣一区在线| 亚洲激情中文| 国产一区二区三区黄网站| 亚洲精选91| 日韩午夜精品| 久久伊人亚洲| 日韩激情网站| 日韩高清一区| 美女网站一区| 久草免费在线视频| 精品欠久久久中文字幕加勒比| 青青草91视频| 国产一区 二区| 久久国产精品成人免费观看的软件| 中文字幕一区二区三区四区久久| 国产精品久久亚洲不卡| 亚洲人成高清| 亚洲激情二区| 欧美一区自拍| 亚洲精品99| 伊人久久国产| 成人福利视频| 婷婷精品进入| 午夜国产一区二区| 99pao成人国产永久免费视频| 国产精品流白浆在线观看| 国产亚洲一区在线| 国产精品任我爽爆在线播放| av一区在线| 欧美成a人片免费观看久久五月天| 中文视频一区| 日韩免费一区| 亚洲欧美日韩高清在线| 婷婷亚洲精品| 丝袜av一区| 最新国产精品久久久| 久久中文字幕二区| 电影91久久久| 日韩欧美不卡| 亚洲乱码久久| 欧美美女一区| 美女久久久久久| 国产视频久久| 999久久久免费精品国产| 亚洲视频综合| 欧洲亚洲一区二区三区| 成人在线免费观看91| 欧美天堂视频| 天堂а√在线最新版中文在线| 成人在线丰满少妇av| 亚洲一区资源| 欧美日一区二区三区在线观看国产免| 日韩欧美三区| 欧洲毛片在线视频免费观看| 欧美在线亚洲综合一区| 免费视频亚洲| 日韩精品三级| 国产欧美日韩精品一区二区免费 | 蜜乳av另类精品一区二区| 成人污污视频| 亚洲小说春色综合另类电影| 国产91在线播放精品| 日韩一区二区三区免费视频| 亚洲国产福利| 国产欧美在线| 日韩激情av在线| 亚洲二区在线| 波多视频一区| 亚洲午夜视频| 欧美黑人巨大videos精品| 国产日韩高清一区二区三区在线 | 国产精品久久久久久久久久妞妞| 亚洲毛片在线免费| 成人亚洲一区| 日本免费在线视频不卡一不卡二| 精品中国亚洲| 激情久久久久久久| 丝袜av一区| 久久精品亚洲欧美日韩精品中文字幕| 欧美日本一区| 亚洲a级精品| 丝瓜av网站精品一区二区| 神马日本精品| 欧洲毛片在线视频免费观看| 欧美中文字幕| 国产日韩视频| 国产精品1区在线| 日韩在线观看一区| 高清一区二区| 欧美69视频| 欧美aaaaaa午夜精品| 91九色综合| 国产亚洲高清在线观看| 欧美日韩精品一区二区三区视频 | 欧美成人精品| 久久久男人天堂| 亚洲一级黄色| 日韩精品看片|