初始化
{
ArticleSet articleSet=new ArticleSet();
//倉庫初始化招刨,放入一些商品
public void initial(){
Article xiaomi11=new Article();
/* xiaomi11.name="小米11";
xiaomi11.number=30;
xiaomi11.amount=0;
xiaomi11.price=1999;*/
xiaomi11.setArticle("小米11",1999,30,0);
Article xiaomi11pro=new Article();
xiaomi11pro.setArticle("小米11pro",2999,10,0);
Article xiaomiUltra=new Article();
xiaomiUltra.setArticle("小米至尊版",3999,20,0);
articleSet.articles[0]=xiaomi11;
articleSet.articles[1]=xiaomi11pro;
articleSet.articles[2]=xiaomiUltra;
}
啟動菜單
public void startMenu(){
boolean flag=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.println("請輸入功能編號");
Scanner scanner=new Scanner(System.in);
int funNo=scanner.nextInt();
switch (funNo){
case 1:
System.out.println("查看商品信息");
chakan();
break;
case 2:
System.out.println("新增商品信息");
add();
break;
case 3:
System.out.println("刪除商品信息");
delete();
break;
case 4:
System.out.println("賣出商品");
seleOut();
break;
case 5:
System.out.println("排行榜");
leadeBand();
break;
case 6:
System.out.println("謝謝霎俩,已經(jīng)退出");
exit();
flag=false;
break;
default:
System.out.println("您輸入的功能編號有錯誤");
break;
}
}while (flag);
}
查看商品信息
private void chakan() {
System.out.println("編號\t名字\t\t單價(jià)\t\t庫存\t已售");
for (int i=0;i<articleSet.articles.length;i++){
if (articleSet.articles[i] !=null){
articleSet.articles[i].print(i);
}
}
}
排行榜
private void leadeBand() {
/*降序排序
for() 所有元素全部參與排序
for() 當(dāng)前元素只和后邊的元素比較
if(當(dāng)前元素<后續(xù)元素)
交換位置
*/
//排序(冒泡排序)
for (int i=0;i<articleSet.articles.length-1;i++){
for (int j=0;j<articleSet.articles.length-i-1;j++){
if (articleSet.articles[j] !=null&&articleSet.articles[j+1] !=null){//數(shù)組中不為null才能參與排序
if (articleSet.articles[j].number<articleSet.articles[j+1].number){
Article newTemp=articleSet.articles[j];//新定義一個臨時(shí)變量,實(shí)現(xiàn)兩個數(shù)量交換位置
articleSet.articles[j]=articleSet.articles[j+1];
articleSet.articles[j+1]=newTemp;
}
}
}
}
//打印結(jié)果
for (int i=0;i<articleSet.articles.length;i++){
if (articleSet.articles[i]!=null){
System.out.println((i+1)+"\t"+articleSet.articles[i].name+"\t"+articleSet.articles[i].number);
}
}
}
賣出商品
private void seleOut() {
/*
接受用戶的輸入,找到要賣出的商品在數(shù)組中的位置茸苇,修改對應(yīng)的庫存
sout(請輸入要銷售的商品名稱)
sc=new Scanner
name=sc.next();
for()
if(元素不為null&&.name equals(name) )//在數(shù)組的有值元素中 找到售出商品名字相同的位置
sout (輸入賣出的數(shù)量:)
sc.nextInt()
if(賣出的數(shù)量<庫存[i].anmout)
庫存【i】.amount=【i】.amount-賣出的數(shù)量
售出【i】.number=【i】.number+賣出的數(shù)量
sout(賣出成功)
break;跳出循環(huán)排苍,后續(xù)的位置無需處理
*/
System.out.println("請輸入你要售出的商品名稱:");
Scanner scanner=new Scanner(System.in);
String name=scanner.next();
for (int i=0;i<articleSet.articles.length;i++){
if ((articleSet.articles[i].name).equals(name)){
System.out.println("請輸入你要售出的數(shù)量:");
int shoumai=scanner.nextInt();
if (shoumai<articleSet.articles[i].amount){
articleSet.articles[i].amount=articleSet.articles.length;
articleSet.articles[i].number=articleSet.articles.length;
}
System.out.println("售賣成功");
break;
}
}
}
刪除商品信息
private void delete() {
/*
sout("請輸入你要刪除的商品編號")
new Scanner()
編號=sc.nextInt()
// 在數(shù)組中找到對應(yīng)的商品,刪除
for()
if(在數(shù)組中不為null的元素中查找&& 編號==i+1)
//刪除i位置的元素(具體操作:把后面的元素向前移動学密,覆蓋掉要刪除的元素)
while (要刪除的元素的后一個元素 淘衙!=null)
前面的元素=后面的元素
j++
//手動處理最后一個元素
[j]=null;
break; //后續(xù)null元素直接跳過
*/
System.out.println("請輸入要刪除的商品編號:");
Scanner scanner=new Scanner(System.in);
int bianhao=scanner.nextInt();
boolean flag=true;
for (int i=0;i<articleSet.articles.length;i++){
if (articleSet.articles[i] !=null && (i+1)==bianhao){
int j=i;
while (articleSet.articles[j+1] !=null){
//后面的元素向前移動
articleSet.articles[j]=articleSet.articles[j+1];
j++;
}
articleSet.articles[j] =null;
flag=true;
break; // 后續(xù)的空數(shù)組元素沒有必要執(zhí)行
}else {
flag=false;
}
}
if (flag){
System.out.println("刪除成功");
}else {
System.out.println("刪除失敗");
}
}
新增商品信息
private void add() {
/*
定義鍵盤掃描器
提示用戶輸入商品名稱
接受用戶輸入 商品名稱
提示輸入價(jià)格 庫存
按收以上數(shù)據(jù)
new Article()
newArticle.setArticle(接受名稱,價(jià)格腻暮,庫存彤守,0)
添加到數(shù)組中
for()
if (article[i]==null)第一個為空的數(shù)組元素
ariticle[i]=newArticle 存在第一個為空的數(shù)組位置
break 跳出后續(xù)的空格位置
*/
Scanner scanner=new Scanner(System.in);
System.out.println("請輸入商品的名稱:");
String name=scanner.next();
System.out.println("請輸入商品的單價(jià):");
double price=scanner.nextDouble();
System.out.println("請輸入商品的庫存:");
int count=scanner.nextInt();
System.out.println("請輸入已買的數(shù)量:");
int number=scanner.nextInt();
Article newArticle=new Article();
newArticle.setArticle(name,price,count,number);
for(int i=0;i<articleSet.articles.length;i++){
if (articleSet.articles[i]==null){
articleSet.articles[i]=newArticle;//把新建的對象放在數(shù)組中的第一個空位置
break;//后續(xù)的空位置直接跳過
}
}
}
退出
public void exit(){
System.out.println("謝謝使用,系統(tǒng)即將退出哭靖!");
}
}