Java基础案例 库存管理系统

【案例6-1】库存管理系统
像商城和超市这样的地方,都需要有自己的库房,并且库房商品的库存变化应有专人记录,这样才能保证商城和超市正常运转。
本例要求编写一个程序,模拟库存管理系统。该系统主要包括系统首页、商品入库功能、商品显示功能和删除商品功能。系统首页及每个功能的具体要求如下。
(1)系统首页:用于显示系统所有的操作,并且可以选择使用某一个功能。
(2)商品入库功能:首先提示是否要录入商品,根据用户输入的信息判断是否需要录入商品。如果需要录入商品,则需要用户输入商品的名称、颜色、价格和数量等信息。录入完成后,提示商品录入成功并打印所有商品。如果不需要录入商品,则返回系统首页。
(3)商品显示功能:用户选择商品显示功能后,在控制台打印仓库所有商品信息。
(4)删除商品功能:用户选择删除商品功能后,根据用输入的商品编号删除商品,并在控制台打印删除后的所有商品。
本案例要求使用 Collection 集合存储自定义的对象,并用迭代器、增强 for 循环遍历集合。

【实现代码】

/**
 * ZAY 2023.7.27
 */
import java.util.*;

public class Example16 {
    static Scanner sc = new Scanner(System.in);
    static LinkedList list = new LinkedList<>();
    public static void main(String[] args) {
        while (true){
            home();
            int n1 = sc.nextInt();
            if (n1 == 1){
                System.out.println("是否录入:1.是 2.否");
                int n2 = sc.nextInt();
                if (n2 == 1){
                    insert();
                    print();
                } else {
                    
                }
            } else if (n1 == 2) {
                print();
            } else if (n1 == 3) {
                delete();
            }
        }

    }

    public static void home() {
        System.out.println("请选择您要使用的功能:");
        System.out.println("1.商品入库");
        System.out.println("2.商品显示");
        System.out.println("3.商品删除");
    }

    public static void insert( ) {
        System.out.println("输入商品信息:名称、颜色、单价、数量");
        String thing0 = sc.nextLine();
        //当nextLine();方法位于任意输入方法( nextXXX() )之后(不包括nextLine() )时,nextLine()方法会因为读取了回车而跳过输入
        String thing = sc.nextLine();
        list.add(thing);
    }

    public static void print() {
        int i = 0;
        for (Object obj : list) {
            i++;
            System.out.println("编号"+i+" "+obj);
        }
    }

    public static void delete() {
        System.out.println("请输入您要删除的商品编号:");
        int n = sc.nextInt();
        Iterator iterator = list.iterator();
        int i = 0;
        while (iterator.hasNext()){
            i++;
            Object obj = iterator.next();
            if (n == i) {
                iterator.remove();
            }
        }
        print();
    }
}

【运行截图】

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值