Java編寫的超市商品庫存的案例
阿新 • • 發佈:2018-11-15
商品庫存的案例
案例分析:實現商品的庫存管理
功能:
1.展示使用者選擇功能清單
2.根據選擇的功能編號,進行不同的操作
A.展示所有庫存
B.修改商品尺寸
C.修改商品價格
D.修改庫存數量
E.新增使用者
案例實現的程式碼:
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
public class Shop {
//建立一個列表用於儲存使用者名稱
public static List<String> aList =null;
//建立一個列表用於儲存使用者名稱密碼
public static List<String> aList1 =null;
public static void main(String[] args){
//建立一個使用者列表用於儲存使用者資訊
aList = new ArrayList<String>();
//建立一個使用者列表用於儲存使用者資訊
aList1 = new ArrayList<String>();
aList.add("蔣毅");
aList1.add("123456");
//使用陣列,儲存商品的資訊
//品名、尺寸、價格、庫存數,定義4個數組
String[] brand = {"MacBookAir","ThinkpadT450"};
double[] size = {13.3,15.6};
double[] price = {9998.97,6789.56};
int [] count = {0,0};
while(true){
if(userNameAndpassWord()){
itcase: while(true){
int choose = chooseFunction();
switch(choose){
case 1 :
//呼叫檢視庫存清單方法
printStore(brand,size,price,count);
break;
case 2 :
//呼叫修改商品的尺寸的方法
update(brand,size);
break;
case 3 :
//呼叫修改商品的價格的方法
update(brand,price);
break;
case 4 :
//呼叫修改庫存的數量的方法
update(brand,count);
break;
case 5 :
//呼叫新增使用者的方法
System.out.println("請輸入新添使用者的用名");
addUser(aList);
System.out.println("請輸入新添使用者的密碼");
addUser(aList1);
break;
case 6 :
break itcase ;
default :
System.out.println("請輸入正確的功能操作");
break;
}
}
}
}
}
/*
定義方法:用於註冊使用者
返回值:無
引數型別:使用者列表
*/
public static void addUser(List<String> aList){
String user = SystemIn();
aList.add(user);
}
/*
定義方法:用於輸入使用者名稱或密碼
返回值:String型別
引數:沒有
*/
public static String SystemIn(){
String SystemIn =new Scanner(System.in).next();
return SystemIn;
}
/*
定義方法:判斷管理員輸入的密碼是否正確
返回值:Boolean型別
引數:無
*/
public static boolean userNameAndpassWord(){
boolean flag = false;
System.out.println("請輸入管理員使用者名稱:");
String username = SystemIn();
System.out.println("請輸入使用者密碼:");
String password = SystemIn();
//隨機產生驗證碼
Random ran = new Random();
int yanZhenMa = ran.nextInt(10000);
System.out.println("請輸入驗證碼:"+yanZhenMa);
Scanner sc = new Scanner(System.in);
int YZM = sc.nextInt();
if(PanduanName(username)&&PanduanPassWord(password)&&(yanZhenMa == YZM)){
flag = true;
}else{
System.out.println("使用者名稱錯誤或密碼錯誤,請聯絡管理員");
}
return flag;
}
/*
定義方法:判斷列表中是否存在輸入的使用者名稱
返回值:boolean型別
引數:String型別的使用者名稱
*/
public static boolean PanduanName(String username){
boolean flag = false;
for(int i = 0 ; i < aList.size();i++){
String obj = aList.get(i);
if(username.equals(obj)){
flag = true;
}
}
return flag;
}
/*
定義方法:判斷列表中是否存在輸入的密碼
返回值:boolean型別
引數:String型別的使用者名稱
*/
public static boolean PanduanPassWord(String password){
boolean flag = false;
for(int i = 0 ; i < aList1.size();i++){
Object obj = aList1.get(i);
if(password.equals(obj)){
flag = true;
}
}
return flag;
}
/*
定義方法:過載修改庫存的方法,修改尺寸或修改價格
返回值:void
引數:品名的陣列,價格的陣列
*/
public static void update(String[] brand,double[] size){
//遍歷陣列,遍歷到一個,修改一個
//接受鍵盤輸入
Scanner sc = new Scanner(System.in);
//遍歷陣列
for(int i = 0;i < brand.length; i++){
System.out.println("請輸入"+brand[i]+"新的尺寸:");
//鍵盤輸入,錄入庫存,儲存到庫存的陣列中
double newSize = sc.nextDouble();
size[i] =newSize;
}
}
/*
定義方法,過載修改庫存的方法,修改庫存數量
使用者輸入1個,就修改1個
返回值:void
引數:庫存數的陣列,品名的陣列
*/
public static void update(String[] brand,int[] count){
//遍歷陣列,遍歷到一個,修改一個
//接受鍵盤輸入
Scanner sc = new Scanner(System.in);
//遍歷陣列
for(int i = 0;i < brand.length; i++){
System.out.println("請輸入"+brand[i]+"新的庫存數");
//鍵盤輸入,錄入庫存,儲存到庫存的陣列中
int newCount = sc.nextInt();
count[i] =newCount;
}
}
/*
定義方法:展示所有的庫存清單,遍歷
返回值:沒有
引數:所有陣列
*/
public static void printStore(String[] brand,double[] size,double[] price,int[] count){
System.out.println("-------------------商場庫存清單-------------");
System.out.println("品牌型號"+"\t"+"尺寸"+"\t"+"價格"+"\t"+"\t"+"庫存數量");
//定義變數,計算總庫存數和總價格
int totalCount = 0;
int totalMoney = 0;
//遍歷陣列,將陣列中所有的商品資訊打印出來
for(int i = 0;i < brand.length; i++){
System.out.println(brand[i]+"\t"+size[i]+"\t"+price[i]+"\t"+"\t"+count[i]);
totalCount += count[i];
totalMoney += count[i]*price[i];
}
System.out.println("總庫存數:\t"+totalCount);
System.out.println("商品庫存總金額:"+totalMoney);
}
/*
定義方法,實現使用者的選擇功能,功能的需要返回來
返回值:int
引數,沒有
*/
public static int chooseFunction(){
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("請輸入要執行的操作序號");
//接收鍵盤輸入
Scanner sc = new Scanner(System.in);
int chooseNumber = sc.nextInt();
return chooseNumber;
}
}
- 第六天的學習思維導圖: