本文實例為大家分享了Java實現購物管理系統的具體代碼,供大家參考,具體內容如下
重點內容
JAVA分支結構練習
動態數組
注冊表讀寫刪
代碼:
package Endless;import java.util.ArrayList;import java.util.Random;/*** @JAVA01.person1.java* @author 當前用戶:Endless作者 :Endless* @version 創建時間:2017年7月26日 下午6:29:16* //實現商品及會員信息管理(添加,刪除,顯示)* //實現超市結算*/import java.util.Scanner;import java.util.prefs.BackingStoreException;import java.util.prefs.Preferences;public class persion { static int s; static boolean huiyuan,xhuiyuan; static String bke="百事可樂",ke="500ml可樂一瓶",m="5公斤面粉",ss="1個蘇泊爾炒菜鍋",o="歐萊雅爽膚水一瓶"; static ArrayList<String>array=new ArrayList<String>(); static Preferences goodsnodes = Preferences.systemRoot().node("goods"); //創建節點 static Preferences goodschildnode = goodsnodes.node( "goods"); //創建子節點 public static void main(String []args) { outline(); System.out.println("/t歡迎使用購物管理系統"); System.out.println("/t1.登陸系統/n/t2.退出程序/n "); outline(); int n =scanint(); if(n == 1){ login(); }else if( n== 2){ System.out.println("已退出"); System.exit(0); }else { System.out.println("請重新選擇:"); main(null); } } public static void outline(){ System.out.println("* * * * * * * * * * * * * * * * * * * * * * */n"); } public static int scanint(){ int x = 0; try { Scanner scan =new Scanner(System.in); x = scan.nextInt(); } catch (Exception e) { System.out.println("輸入有誤,請輸入數字:"); } return x; } public static String scanStr(){ String x = null; try { Scanner scan =new Scanner(System.in); x = scan.next(); } catch (Exception e) { System.out.println("輸入有誤,請輸入字符串:"); } return x; } public static void login(){ System.out.println(" * * * * * * * * * 登陸 * * * * * * * * * * * */n請輸入密碼/n:"); int n1 =scanint(); if(n1==(123123)){ System.out.println("登陸成功/n"); showMain(); }else{ System.out.println("密碼錯誤"); System.out.println("請重新輸入密碼/n:"); login(); } } private static void showMain() { System.out.println("/n/n/t歡迎使用購物管理系統/n"); outline(); System.out.println("/t/t 1. 會 員 信 息 管 理/n"); System.out.println("/t/t 2. 貨 物 信 息 管 理/n"); System.out.println("/t/t 3. 購 物 結 算/n"); System.out.println("/t/t 4. 注 銷/n"); outline(); System.out.print("請選擇,輸入數字:"); int n2 =scanint(); switch (n2) { case 1: new user(); break; case 2: goods(); break; case 3: jiesuan(); break; case 4: System.out.println("注銷成功"); main(null); default: System.out.println("沒有您要的選項請重新輸入"); showMain(); break; } } private static void goods() { //商品管理 :添加商品: 編號 品名 價格 // 刪除:選擇標號刪除 outline(); System.out.println("/t/t商品信息管理/n"); System.out.println("/t/t1,顯示商品/n"); System.out.println("/t/t2,添加物品/n"); System.out.println("/t/t3,刪除商品/n"); System.out.println("/t/t4,返回上級/n"); outline(); int n = scanint(); if (n==1){ showgoods(); }else if(n==2){ addgoods(); }else if(n ==3){ delgoods(); }else if(n==4) { showMain(); }else { goods(); } } private static void delgoods() { System.out.println("請選擇要刪除商品的ID:/n按0返回上級"); try { Scanner scan =new Scanner(System.in); int x = scan.nextInt(); boolean remove=false; for (int i=0;i<array.size();i++){ if(x==Integer.parseInt(array.get(i))){ remove=true; } } if (remove){ goodschildnode.remove(Integer.toString(x)); System.out.println("刪除成功"); goods(); }else if (x==0) { goods(); }else { System.out.println("沒有此商品!"); delgoods(); } new user(); } catch (Exception e) { System.out.println("請輸入數字"); delgoods(); } } private static void showgoods() { try { int leng =goodschildnode.keys().length; syncread(); if(leng==0){ System.out.println("沒有商品"); }else{ try { System.out.println("當前有"+goodschildnode.keys().length+"種商品"); for(int i = 0;i<=goodschildnode.keys().length;i++){ String shows =goodschildnode.get(array.get(i), ""); System.out.println(shows); System.out.println("──────────────────────────────────────────────"); } System.out.println("00000000"); } catch (Exception e) { } } } catch (BackingStoreException e) { } System.out.println("111111111"); goods(); } private static void syncread() { try { String[] arr= goodschildnode.keys(); goodschildnode.sync(); array.clear(); for(int i=0;i<arr.length;i++){ array.add(arr[i]); } } catch (Exception e) { } } private static int check(int x) { Random n=new Random(); syncread(); for(int i=0;i<array.size();i++){ if(x==Integer.parseInt(array.get(i))){ check(n.nextInt(999)+1); } } return x; } private static void addgoods(){ outline(); System.out.println("/t/t請輸入商品信息"); System.out.println("/t/t品名,價格(元),單位"); System.out.println("/t/t回車換行區分"); outline(); syncread(); String name =scanStr(); String nuit =scanStr(); int price = scanint(); Random n=new Random(); String id ; id=Integer.toString(check(n.nextInt(999)+1)); try{ goodschildnode.put(id, "ID:"+id+" 品名:"+name+" 價格:"+price+" 單位:"+nuit); syncread(); System.out.println("第"+(goodschildnode.keys().length)+"種商品添加成功"); System.out.println("當前商品"+goodschildnode.keys().length+"種/n"+array+"/n"+array.size()); goods(); } catch (Exception e) { goods(); } } static void jiesuan(){ try{ System.out.println("是否會員?是選1 否選0"); int x= scanint(); if (x==1){ huiyuan = true; Scanner sc =new Scanner(System.in); System.out.println("請輸入您的會員號:"); int hui = sc.nextInt()/100%10; if(hui==9){ System.out.println("恭喜你屬于幸運會員,可以享受全場八折優惠"); xhuiyuan = true; }else{ xhuiyuan = false; } }else if (x==0) { huiyuan = false; } System.out.println("請輸入消費金額:"); Scanner scan =new Scanner(System.in); if(scan.hasNext()){ s=scan.nextInt(); outline(); System.out.println("是否參加優惠換購活動:" ); System.out.println("1:滿50元,加2元換購"+bke ); System.out.println("2:滿100元,加3元換購" +ke); System.out.println("3:滿100元,加10元換購" +m ); System.out.println("4:滿200元,加10元換購" +ss ); System.out.println("5:滿200元,加20元換購 " +o ); System.out.println("0:不換購/n請選擇:/n" ); outline(); os(); } } catch (Exception e) { System.out.println("請輸入數字"); jiesuan(); } } static void out(String n , double s){ if(!(n==null)){ System.out.println("成功換購"+n); } System.out.println("本次消費總金額:"+s+"元"); if (huiyuan && xhuiyuan){ System.out.println("尊敬的幸運會員,本次消費享受8折優惠"); double x =s*0.8; System.out.println("折扣為您節省:"+(s-x)+"元"); }else if (huiyuan) { System.out.println("尊敬的會員,本次消費享受9折優惠"); double x =s*0.9; System.out.println("折扣為您節省:"+(s-x)+"元"); } System.out.println("實際消費總金額:"+s+"元"); showMain(); } static void os(){ switch (scanint()) { case 0: out(null,s); case 1: if(s>=52){ out(bke,s+2); }else{ Err(); } case 2: if(s>=103){ out(ke,s+3); }else{ Err(); } break; case 3: if(s>=110){ out(m,s+10); }else{ Err(); } break; case 4: if(s>=210){ out(ss,s+10); }else{ Err(); } break; case 5: if(s>=220){ out(o,s+20); }else{ Err(); } break; default: System.out.println("請重新選擇"); os(); } } static void Err(){ System.out.println("金額不足/n"); main(null); } static class user{ static ArrayList<String>array=new ArrayList<>(); static Preferences nodes = Preferences.systemRoot().node("user"); //創建節點 static Preferences childnode = nodes.node( "user"); //創建子節點 public user() { outline(); System.out.println("/t/t1,添加用戶"); System.out.println("/t/t2,刪除用戶"); System.out.println("/t/t3,顯示用戶"); System.out.println("/t/t4,返回上級"); outline(); try { int x=scanint(); switch (x) { case 1: add(); break; case 2: deluser(); break; case 3: show(); break; case 4: showMain(); break; default: System.out.println("沒有您要的選項!請重新選擇"); new user(); break; } } catch (Exception e) { new user(); } } private void deluser() throws BackingStoreException { System.out.println("請選擇要刪除用戶的ID:/n按0返回上級"); try { Scanner scan =new Scanner(System.in); int x = scan.nextInt(); boolean remove=false; for (int i=0;i<array.size();i++){ if(x==Integer.parseInt(array.get(i))){ remove=true; } } if (remove){ childnode.remove(Integer.toString(x)); System.out.println("刪除成功"); }else if (x==0) { new user(); }else { System.out.println("沒有此用戶!"); deluser(); } new user(); } catch (Exception e) { System.out.println("請輸入數字"); deluser(); } } private static void show() { try { int leng =childnode.keys().length; syncread(); if(leng==0){ System.out.println("沒有用戶"); }else{ System.out.println("當前有"+childnode.keys().length+"位用戶"); for(int i = 0;i<=childnode.keys().length;i++){ String shows =childnode.get(childnode.keys()[i], ""); System.out.println(shows); System.out.println("──────────────────────────────────────────────"); } } } catch (BackingStoreException e) { } new user(); } private static void syncread() { try { String[] arr= childnode.keys(); childnode.sync(); array.clear(); for(int i=0;i<arr.length;i++){ array.add(arr[i]); } } catch (Exception e) { } } private static void add(){ Preferences nodes = Preferences.systemRoot().node("user"); //創建節點 Preferences childnode = nodes.node( "user"); //創建子節點 outline(); System.out.println("/t/t請輸入用戶信息"); System.out.println("/t/t姓名,6位卡號,年齡,電話"); System.out.println("/t/t回車換行區分"); outline(); syncread(); String name =scanStr(); int card = scanint(); int age =scanint(); String tel =scanStr(); Random n=new Random(); String id ; id = Integer.toString(n.nextInt(999)+1); try{ childnode.put(id, "ID:"+id+" 姓名:"+name+" 卡號:"+card+" 年齡:"+age+" 電話:"+tel); syncread(); System.out.println("第"+(childnode.keys().length)+"位會員添加成功"); System.out.println("當前用戶"+childnode.keys().length+"位/n"+array+"/n"+array.size()); new user(); } catch (Exception e) { new user(); } } } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。
新聞熱點
疑難解答
圖片精選