【库存管理系统】
1、案例描述
像商城和超市这样的地方,都需要有自己的库房,并且库房商品的库存变化应有专人记录,这样才能保证商品和超市正常运转。
本例要求编写一个程序,模拟库存管理系统。该系统主要包括系统首页、商品入库功能、商品显示功能和删除商品功能。系统首页及每个功能的具体要求如下。
(1)系统首页:用于显示系统所有的操作,并且可以选择使用某一个功能。
(2)商品入库功能:首先提示是否要录入商品,根据用户输入的信息判断是否需要录入商品。如果需要录入商品,则需要用户输入商品的名称、颜色、价格和数量等信息。录入完全后,提示商品录入成功并打印所有商品。如果不需要录入商品,则返回系统首页。
(3)商品显示功能:用户选择商品显示功能就,在控制台打印仓库所有商品信息。
(4)删除商品功能:用户选择删除商品功能后,根据用用户输入的商品编号删除商品,并在控制台打印删除后的所有商品。
本案例要求使用Collection几何存储自定义的对象,并用迭代器、增强for循环遍历几何。
2、案例目的
(1)学会分析“库存管理系统”案例的实现思路
(2)根据思路完成“库存管理系统”案例的代码编写、编译及运行
(3)掌握List集合常用方法的使用
(4)增强for循环的使用
3、运行结果
4、代码实现
package cn.itcast.example;
import java.util.ArrayList;
import java.util.Scanner;
class Phone{
private String name;
private String color;
private int price;
private int num;
public Phone() {
}
public Phone(String name, String color, int price, int num) {
this.name = name;
this.color = color;
this.price = price;
this.name = name;
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
@Override
public String toString() {
return "Phone [name=" + name + ", color=" + color + ", price=" + price + ", num=" + num + "]";
}
}
public class example {
static ArrayList<Phone> c = new ArrayList<>();
static Scanner sc = new Scanner(System.in);
public static void main (String[] arge) {
c.add(new Phone("小米14","玫瑰金",3999,15));
c.add(new Phone("小米14","幻彩紫",3699,28));
c.add(new Phone("华为p30","白金色",5699,2));
c.add(new Phone("华为p30","幻彩白",5999,18));
c.add(new Phone("VIVO PLus9","幻彩紫",2699,28));
c.add(new Phone("魅族16th","紫金黑",5229,10));
c.add(new Phone("苹果11","土豪金",5999,51));
System.out.println("欢迎使用库房管理系统,请选择要进行的操作");
while (true) {
System.out.println("1、商品入库");
System.out.println("2、商品显示");
System.out.println("3、删除商品");
System.out.println("4.退出系统");
int choice = sc.nextInt();
if(choice ==1) {
add();//商品入库
show();
}else if (choice ==2) {
show();//商品显示
}else if (choice ==3) {
delete();//删除商品
show();
}else if (choice ==4) {
break;//退出系统
}else {
System.out.println("您的输入有误!");
}
}
}
private static void delete() {
System.out.println("请输入要删除的商品编号:");
int i = sc.nextInt();
c.remove(i-1);
System.out.println("商品删除成功");
}
private static void show() {
if(c.size() == 0) {
System.out.println("目前没有商品可以查看");
}else {
System.out.println("目前现有的商品为:");
for(Phone phone :c) {
System.out.println(phone);
}
}
}
private static void add() {
System.out.println("您是否录入商品?");
String choice = sc.next();
if("yes".equals(choice)) {
System.out.println("请输入商品的名称:");
String name = sc.next();
System.out.println("请输入商品的颜色:");
String color = sc.next();
System.out.println("请输入商品的价格:");
int price = sc.nextInt();
System.out.println("请输入商品的数量:");
int num = sc.nextInt();
Phone p = new Phone(name,color,price,num);
c.add(p);
System.out.println("商品入库成功");
}else {
return;
}
}
}