• java-库存管理案例


    库存管理案例

     案例介绍

      1.实现登录界面,用户名、密码登录。

      2.实现超市菜单选项,将对下列功能进行方法封装:

        打印库存清单功能

        库存商品添加功能

        库存商品修改功能

        库存商品删除功能

        退出程序返回登录界面功能

     案例需求分析

      登录界面:能够进行的操作有2项(登录、退出),我们可以采用(switch)菜单的方式来完成,并判断用户名和密码是否正确。

      菜单界面:每一项功能操作,我们采用方法进行封装,这样,可使程序的可读性增强。

        选择“1.查看库存清单”功能,则控制台打印库存清单

        选择“2.商品添加”功能,则对每种商品进行添加

        选择“3.商品修改”功能,则对选择商品进行修改

        选择“4.商品删除”功能,则对选择商品进行删除

        选择“5.退出”功能,则退出库存管理,进入登录界面

    代码展示:

      商品属性:

        Good.class

    复制代码
    1 package com.oracle.demo01;
    2 
    3 public class Goods {
    4     int gid;
    5     String gname;
    6     double price;
    7 }
    复制代码

       界面代码:

        demo01.class
    复制代码
      1 package com.oracle.demo01;
      2 
      3 import java.util.ArrayList;
      4 import java.util.Scanner;
      5 
      6 public class Shop {
      7 
      8     public static void main(String[] args) {
      9         
     10 
     11         Scanner sc = new Scanner(System.in);
     12         System.out.println("-----------------用户登录----------------");
     13         System.out.println("1、登陆");
     14         System.out.println("2、退出");
     15         int choose = sc.nextInt();
     16             switch (choose) {
     17             case 1:
     18                 record();
     19                 break;
     20             case 2:
     21                 return;
     22             default:
     23                 System.out.println("您的输入有误,请重新输入");
     24                 break;
     25 
     26             }
     27         }
     28     
     29     //登录页面
     30     public static void record(){
     31         System.out.println("-----------------用户登录----------------");
     32         System.out.println("请输入用户名:");
     33         Scanner sc = new Scanner(System.in);
     34         String user=sc.next();
     35         System.out.println("请输入密码:");
     36         String postword=sc.next();
     37         if(user.equals(user)&&postword.equals("123456")){
     38             
     39             show();
     40         }else{
     41             System.out.println("输入用户名或密码不正确,请重新输入:");
     42             record();
     43         }
     44     }
     45     // 主页面
     46     public static void show() {
     47         System.out.println("---------------欢迎光临oracle超市--------------");
     48         System.out.println("1.货物清单");
     49         System.out.println("2.添加货物");
     50         System.out.println("3.删除货物");
     51         System.out.println("4.修改货物");
     52         System.out.println("5.退出");
     53         System.out.println("请输入您的选择");
     54         ArrayList<Goods> arr=new ArrayList<Goods>();
     55         Goods g1=new Goods();
     56         g1.gid=9001;
     57         g1.gname="少林寺酥饼核桃";
     58         g1.price=120;
     59         Goods g2=new Goods();
     60         g2.gid=9002;
     61         g2.gname="尚康杂粮杜丹饼";
     62         g2.price=20;
     63         Goods g3=new Goods();
     64         g3.gid=9003;
     65         g3.gname="新疆原产哈密瓜";
     66         g3.price=7;
     67         arr.add(g1);
     68         arr.add(g2);
     69         arr.add(g3);
     70         while (true) {
     71             
     72             Scanner sc = new Scanner(System.in);
     73             int choose = sc.nextInt();
     74             switch (choose) {
     75             case 1:// 货物清单
     76                 getGoods(arr);
     77                 break;
     78             case 2:// 添加货物
     79                 addGoods(arr);
     80                 break;
     81             case 3:// 删除货物
     82                 deleteGoods(arr);
     83                 break;
     84             case 4:// 修改货物
     85                 updateGoods(arr);
     86                 break;
     87             case 5: //退出
     88                 record();
     89                 return;
     90             default:
     91                 System.out.println("您的输入有误,请重新输入");
     92                 break;
     93 
     94             }
     95         }
     96     }
     97 
     98     //货物清单
     99     public static void getGoods(ArrayList<Goods> list ) {
    100         System.out.println("--------------------货物清单------------------");
    101         System.out.println("商品编号	商品名称	商品价格");
    102         for(int i=0;i<list.size();i++){
    103             System.out.println(list.get(i).gid+
    104             "		"+list.get(i).gname+"	"+list.get(i).price);
    105         }
    106     }
    107     //添加货物
    108     public static void addGoods(ArrayList<Goods> list ) {
    109         System.out.println("--------------------添加货物------------------");
    110         System.out.println("请输入你要添加的商品编号:");
    111         Scanner sc = new Scanner(System.in);
    112         int gid=sc.nextInt();
    113         System.out.println("请输入你要添加的商品名称:");
    114         String gname=sc.next();
    115         System.out.println("请输入你要添加的商品价格:");
    116         double price=sc.nextDouble();
    117         Goods goods=new Goods();
    118         goods.gid=gid;
    119         goods.gname=gname;
    120         goods.price=price;
    121         //将对象存入集合中
    122         list.add(goods);
    123     }
    124     //修改货物
    125     public static void updateGoods(ArrayList<Goods> list ) {
    126         //查询所有货物
    127         getGoods(list);
    128         System.out.println("请输入你要修改的商品编号:");
    129         Scanner sc = new Scanner(System.in);
    130         int gid=sc.nextInt();
    131         System.out.println("请输入你要修改后的商品编号:");
    132         String gname=sc.next();
    133         System.out.println("请输入你要修改后的商品价格:");
    134         double price=sc.nextDouble();
    135         //寻找要修改的商品编号所对应的对象
    136         for(int i=0;i<list.size();i++){
    137             //从每一个对象中取出gid与用户输入的gid比较
    138             //如果相同就找到了要修改的对象
    139             if(list.get(i).gid==gid){
    140                 //修改商品名称和价格
    141                 list.get(i).gname=gname;
    142                 list.get(i).price=price;
    143             }
    144         }
    145     }
    146     //删除货物
    147     public static void deleteGoods(ArrayList<Goods> list ) {
    148         getGoods(list);
    149         System.out.println("请输入你要删除的商品编号:");
    150         Scanner sc = new Scanner(System.in);
    151         int gid=sc.nextInt();
    152         for(int i=0;i<list.size();i++){
    153             if(list.get(i).gid==gid){
    154                 list.remove(i);
    155             }
    156         }
    157     }
    158 }
    复制代码

       功能实现:

        1.用户选择界面:

        

      2.用户登录界面:

        

       3.菜单界面

        

      4.商品展示

         

       5.商品添加

        

       6.添加成功

        

  • 相关阅读:
    session中删除数组中的某一个值
    Windows 查看端口占用进程并关闭
    Debian 9 / Debian 10 / Ubuntu 18.04 / Ubuntu 18.10快速开启BBR加速 或 关闭BBR加速
    在ASP.NET Web API 2中使用Owin OAuth 刷新令牌(示例代码)
    在ASP.NET Web API 2中使用Owin基于Token令牌的身份验证
    Web API 2 的操作结果
    WebApi接口安全性 接口权限调用、参数防篡改防止恶意调用
    关于EF中使用Migrations的一些小提示
    Entity Framework 6 多对多增改操作指南
    用MVC5+EF6+WebApi 做一个考试功能(六) 仓储模式 打造EF通用仓储类
  • 原文地址:https://www.cnblogs.com/wuqiance/p/11611399.html
Copyright © 2020-2023  润新知