库存管理
项目描述
代码
/**
* @ClassName StockManagement
* @Description 库存管理
* @Author LiHao
* @Date 2022/8/29 17:12
* @Version 1.0
*/
class Product {
private String version;//品牌型号
private double size;//尺寸
private double price;//价格
private int count;//库存数
public Product(String version, double size, double price, int count) {
this.version = version;
this.size = size;
this.price = price;
this.count = count;
}
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
public double getSize() {
return size;
}
public void setSize(double size) {
this.size = size;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
}
public class StockManagement {
public static void main(String[] args) {
//实例化商品信息
Product mac = new Product("MacBookAir", 13.3, 6988.88, 5);
Product pad = new Product("ThinkPadT450", 14.0, 5999.99, 10);
Product asus = new Product("ASUS-FL5800", 15.6, 4999.5, 18);
//将商品信息放入到list集合中
ArrayList<Product> list = new ArrayList<Product>();
list.add(mac);
list.add(pad);
list.add(asus);
while (true) {
System.out.println("-------------------库存管理_LiHao-------------------");
System.out.println("1.查看库存清单");
System.out.println("2.修改商品库存数量");
System.out.println("3.退出");
System.out.println("请输入要执行的操作序号");
Scanner scanner = new Scanner(System.in);
int choose = scanner.nextInt();//输入的操作序号
switch (choose) {
case 1:
showStock(list);
break;
case 2:
updateStock(list);
break;
case 3:
System.out.println("您已退出");
System.exit(0);
return;
default:
System.out.println("请输入正确的操作序号");
System.out.println();
break;
}
}
}
/**
* @return void
* @Author LiHao
* @Description 修改商品库存数量
* @Date 19:04 2022/8/29
* @Param [list]
*/
private static void updateStock(ArrayList<Product> list) {
System.out.println();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入您要修改的商品编号");
int productId = scanner.nextInt();//需要进行修改的商品编号
if (productId > 0 && productId <= list.size()) {//判断输入的商品编号合法
System.out.println("请输入你要修改的库存数量");
int afterCount = scanner.nextInt();//修改之后的库存数量
// list.get(productId-1).getCount() = afterCount;
/*
报错:意外类型需要变量找到值 原因是=左边返回的是一个值,=右边返回的也是一个值
*/
list.get(productId - 1).setCount(afterCount);
System.out.println();
break;
} else {
System.out.println("请输入合法的商品编号");
}
}
}
/**
* @return void
* @Author LiHao
* @Description 查看库存清单
* @Date 17:57 2022/8/29
* @Param [list]
*/
private static void showStock(ArrayList<Product> list) {
System.out.println("--------------------商城库存清单----------------------------");
//打印库存清单
System.out.println("编号\t品牌型号\t尺寸\t价格\t\t库存数");
for (int i = 0; i < list.size(); i++) {//遍历list集合,打印输出库存清单
System.out.println(" " + (i + 1) + "\t" + list.get(i).getVersion() + "\t" + list.get(i).getSize() + "\t" + list.get(i).getPrice() + "\t\t" + list.get(i).getCount());
}
System.out.println("------------------------------------------------------------");
int sumCount = 0;//总库存数
for (int i = 0; i < list.size(); i++) {//商品库存数量的总和
sumCount += list.get(i).getCount();
}
System.out.println("总库存数:" + sumCount);
double sumPrice = 0;//库存商品总金额
for (int i = 0; i < list.size(); i++) {//【商品价格*库存数量】的总和
sumPrice += list.get(i).getPrice() * list.get(i).getCount();
}
System.out.println("库存商品总金额:" + sumPrice);
System.out.println();
}
}