[案例6

您所在的位置:网站首页 信息系统的功能主要包括 [案例6

[案例6

2024-07-10 03:46| 来源: 网络整理| 查看: 265

任务描述:

像商城和超市这样的地方,都需要有自己的库房,并且库房商品的库存变化有专人记录,这样才能保证商城和超市正常运转。

本例要求编写一个程序,模拟库存管理系统。该系统主要包括系统首页、商品入库、商品显示和删除商品功能。每个功能的具体要求如下:

系统的首页:用于显示系统所有的操作,并且可以选择使用某一个功能。商品入库功能:首先提示是否要录入商品,根据用户输入的信息判断是否需要录入商品。如果需要录入商品,则需要用户输入商品的名称、颜色、价格和数量等信息。录入完成后,提示商品录入成功并打印所有商品。如果不需要录入商品,则返回系统首页。商品显示功能:用户选择商品显示功能后,在控制台打印仓库所有商品信息。删除商品功能:用户选择删除商品功能后,根据用户输入的商品编号删除商品,并在控制台打印删除后的所有商品。

本案例要求使用Collection集合存储自定义的对象,并用迭代器、增强for循环遍历集合。

运行结果:

 

 

 

代码如下:

定义一个库存类:

/** * 2022/3/30 */ public class Stock { // 库存类 private String name; // 名称 private String color; // 颜色 private double Price; // 价格 private int amount; // 数量 private String Id; // 商品序号 public Stock() { } public Stock(String Id,String name, String color, double price, int amount) { this.Id = Id; this.name = name; this.color = color; Price = price; this.amount = amount; } 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 double getPrice() { return Price; } public void setPrice(double price) { Price = price; } public int getAmount() { return amount; } public void setAmount(int amount) { this.amount = amount; } public String getId() { return Id; } public void setId(String id) { Id = id; } }

定义测试类:

import java.util.ArrayList; import java.util.Iterator; import java.util.Scanner; /** * 2022/3/30 */ public class Demo { public static void main(String[] args) { // 创建集合对象 ArrayList array = new ArrayList(); // 调用库存界面方法 Interface(array); } // 库存界面 public static void Interface(ArrayList array){ Scanner in = new Scanner(System.in); while (true) { System.out.println("----欢迎使用库存管理系统----"); System.out.println("1,商品入库功能"); System.out.println("2,商品显示功能"); System.out.println("3,删除商品功能"); System.out.println("4,退出功能"); System.out.println("请选择功能序号:"); // 输入序号选择功能 int xu = in.nextInt(); switch (xu) { case 1: // 调用入库方法 Warehousing(array); break; case 2: // 调用显示方法 display(array); break; case 3: // 调用删除方法 delete(array); break; case 4: System.out.println("欢迎下次使用!"); System.exit(0); // JVM退出 default: System.out.println("请输入正确的序号!"); } } } // 商品入库方法 public static void Warehousing(ArrayList array ){ Scanner in = new Scanner(System.in); // 将id定义在外面,否则访问不到 String id; // 添加循环,可以重新输入循环 while (true){ System.out.println("请输入商品序号:"); id = in.next(); // 调用序号重复方法 boolean b = isUsed(array,id); // 如果为true给出提示 if (b){ System.out.println("商品序号重复,请重新输入!"); }else{ // 如果为false退出循环 break; } } System.out.println("请输入商品名称:"); String name = in.next(); // 输入商品名称 System.out.println("请输入商品颜色:"); String color = in.next(); // 输入颜色 System.out.println("请输入商品价格:"); double Price = in.nextDouble(); // 输入价格 System.out.println("请输入商品数量:"); int amount = in.nextInt(); // 输入数量 // 创建库存对象 Stock st = new Stock(id,name,color,Price,amount); // 调用add方法,将库存对象存入集合中 array.add(st); // 输出提示 System.out.println("商品入库成功!"); } // 序号重复问题 public static boolean isUsed(ArrayList array ,String id){ // 定义boolean变量 boolean b = false; // 使用增强for遍历集合 for (Stock st : array){ // 如果集合中有此序号,将false改成true,然后退出循环 if (st.getId().equals(id)){ b = true; break; } } return b; } // 商品显示方法 public static void display(ArrayList array){ // 判断是否有商品 if (array.isEmpty()){ System.out.println("暂无商品!"); return; } // 迭代器遍历集合 System.out.println("商品序号\t商品名称\t商品颜色\t商品价格\t\t商品数量"); Iterator iterator = array.iterator(); while (iterator.hasNext()){ Stock st = iterator.next(); System.out.println(st.getId() +"\t\t"+ st.getName() + "\t\t" + st.getColor() + "\t\t" + st.getPrice() + "\t\t" + st.getAmount()); } } // 商品删除功能 public static void delete(ArrayList array) { if (array.isEmpty()){ System.out.println("暂无商品!"); return; } Scanner in = new Scanner(System.in); System.out.println("商品序号\t商品名称\t商品颜色\t商品价格\t\t商品数量"); for (Stock st : array) { System.out.println(st.getId() + "\t\t" + st.getName() + "\t\t" + st.getColor() + "\t\t" + st.getPrice() + "\t\t" + st.getAmount()); } System.out.println("请输入要删除商品的序号:"); String s = in.next(); // 定义一个int变量 int index = -1; // 遍历数组 for (int i = 0; i < array.size(); i++) { Stock st = array.get(i); // 判断是否有这个序号 if (st.getId().equals(s)) { // 将i值赋值给index index = i; break; } } // 如果index还是等于-1就代表没有这个序号 if (index == -1) { System.out.println("请输入正确的商品序号!"); } else { // 调用方法根据索引删除 array.remove(index); System.out.println("删除成功"); } } }



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3