当前位置:   article > 正文

超市管理系统Java_java编程实现简单超市管理

java编程实现简单超市管理

编程小白一枚,简单的Java小项目;自己的理解实现增删改查。

一、定义商品类

  1. public class Commodity {//定义商品类
  2. private String proname;//商品名
  3. private Integer pronum;//商品编号
  4. private Double proprice;//商品价格
  5. private Integer procount;//商品数量
  6. public Commodity() {//无参构造器
  7. }
  8. //有参构造器
  9. public Commodity(String proname, Integer pronum, Double proprice, Integer procount) {
  10. this.proname = proname;
  11. this.pronum = pronum;
  12. this.proprice = proprice;
  13. this.procount = procount;
  14. }
  15. //set和get方法
  16. public String getProname() {
  17. return proname;
  18. }
  19. public void setProname(String proname) {
  20. this.proname = proname;
  21. }
  22. public Integer getPronum() {
  23. return pronum;
  24. }
  25. public void setPronum(Integer pronum) {
  26. this.pronum = pronum;
  27. }
  28. public Double getProprice() {
  29. return proprice;
  30. }
  31. public void setProprice(Double proprice) {
  32. this.proprice = proprice;
  33. }
  34. public Integer getProcount() {
  35. return procount;
  36. }
  37. public void setProcount(Integer procount) {
  38. this.procount = procount;
  39. }
  40. //toString方法
  41. @Override
  42. public String toString() {
  43. return "\t"+pronum +"\t\t"+proname+"\t\t\t"+proprice+"\t\t\t"+procount ;
  44. }
  45. }

二、定义商品的操作类

  1. public class CommodityOperation {//商品操作类
  2. ArrayList<Commodity> arrayList=new ArrayList<>();//定义一个List集合存放商品对象
  3. Scanner scanner=new Scanner(System.in);
  4. public void addc(){//添加商品
  5. System.out.println("请输入商品的编号、商品名称、商品价格、商品数量");//通过控制台输入商品信息
  6. Integer id= scanner.nextInt();
  7. String name= scanner.next();
  8. Double price= scanner.nextDouble();
  9. Integer count=scanner.nextInt();
  10. Commodity commodity=new Commodity(name,id,price,count);//通过构造器来向商品属性赋值
  11. arrayList.add(commodity);//将商品对象添加至集合中
  12. System.out.println("添加成功");
  13. System.out.println();
  14. }
  15. public void findc(){//查询商品
  16. System.out.println("------------商品库存清单-----------");
  17. System.out.println("商品编号"+"\t\t"+"商品名称"+"\t\t"+"商品价格"+"\t\t"+"商品数量");
  18. Iterator<Commodity> iterator=arrayList.iterator();//通过迭代器来遍历集合
  19. while (iterator.hasNext()){
  20. Commodity c= iterator.next();
  21. System.out.println(c);
  22. }
  23. System.out.println("---------------------------------");
  24. System.out.println();
  25. }
  26. public void delc(){//根据编号删除商品
  27. System.out.println("请输入你要删除的商品的编号");
  28. int id= scanner.nextInt();
  29. if (arrayList.size()==0){//判断集合是否为空,为空则无法删除
  30. System.out.println("你要删除的商品不存在");
  31. }
  32. else {
  33. for (int i=0;i<arrayList.size();i++){
  34. //循环遍历集合,通过商品在集合中存储的下标来删除商品
  35. if (arrayList.get(i).getPronum()==id){
  36. //如果输入的商品编号存在,则删除
  37. arrayList.remove(i);
  38. System.out.println("操作成功,已删除该商品");
  39. break;
  40. }
  41. else if (i==arrayList.size()-1&&arrayList.get(i).getPronum()!=id){
  42. //遍历到最后一个商品后,任未找到要删除的商品编号
  43. System.out.println("你要删除的商品不存在");
  44. }
  45. }
  46. }
  47. System.out.println();
  48. }
  49. public void updc(){//根据商品的编号修改商品的价格
  50. System.out.println("请输入你要修改商品的编号");
  51. int x= scanner.nextInt();
  52. if (arrayList.size()==0){
  53. System.out.println("你要修改的商品编号不存在");
  54. }
  55. else{
  56. System.out.println("请输入你要修改商品的价格和数量");
  57. Double j= scanner.nextDouble();
  58. Integer z=scanner.nextInt();
  59. for (int i=0;i< arrayList.size();i++) {
  60. //循环遍历集合根据编号找到要修改的商品
  61. if (arrayList.get(i).getPronum()==x){
  62. arrayList.get(i).setProprice(j);//用set方法给商品修改价格
  63. arrayList.get(i).setProcount(z);//用set方法给商品修改数量
  64. System.out.println("操作成功,商品已修改");
  65. break;
  66. }
  67. else if (i==arrayList.size()-1&&arrayList.get(i).getPronum()!=x){
  68. System.out.println("你要修改的商品不存在");
  69. }
  70. }
  71. }
  72. System.out.println();
  73. }
  74. public void findsum(){
  75. System.out.println("-------商品库存数量及总价-------");
  76. for (Commodity commodity: arrayList) {
  77. Integer procount = commodity.getProcount();
  78. Double sum= commodity.getProprice()*commodity.getProcount();
  79. System.out.println("商品:"+commodity.getProname()+"\t"+"商品库存:"+procount+"\t"+"商品总价:"+sum);
  80. }
  81. }
  82. }

三、主菜单页面

  1. public class Test {
  2. public static void main(String[] args) {
  3. Scanner scanner=new Scanner(System.in);
  4. //调用商品操作类
  5. CommodityOperation commodityOperation=new CommodityOperation();
  6. Boolean loop=true;
  7. while (loop){
  8. System.out.println("----------超市管理系统---------");
  9. System.out.println("----------1、货物清单---------");
  10. System.out.println("----------2、添加货物---------");
  11. System.out.println("----------3、删除货物---------");
  12. System.out.println("----------4、修改货物---------");
  13. System.out.println("----------5、查看库存及总价----");
  14. System.out.println("----------6、退 出---------");
  15. System.out.println("请输入你的操作的编号:");
  16. Integer num= scanner.nextInt();
  17. switch (num){
  18. case 1:
  19. commodityOperation.findc();
  20. break;
  21. case 2:
  22. commodityOperation.addc();
  23. break;
  24. case 3:
  25. commodityOperation.delc();
  26. break;
  27. case 4:
  28. commodityOperation.updc();
  29. break;
  30. case 5:
  31. commodityOperation.findsum();
  32. break;
  33. case 6:
  34. System.out.println("确认退出y/n");
  35. String s= scanner.next();
  36. if (s.equals("y")){
  37. System.out.println("退出成功");
  38. loop=false;
  39. }
  40. break;
  41. default:
  42. System.out.println("请输入正确的编号");
  43. }
  44. }
  45. }
  46. }

运行结果如下:

主界面:

 添加货物:

 

 

 查看货物清单:

修改货物:

 

 

 查看库存及总价:

 删除货物:

 

 

 代码还需完善,欢迎评论,一起努力,共同进步。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/118675
推荐阅读
相关标签
  

闽ICP备14008679号