1. 程式人生 > 程式設計 >Java實現商品的查詢、新增、出庫、入庫操作完整案例

Java實現商品的查詢、新增、出庫、入庫操作完整案例

本文例項講述了Java實現商品的查詢、新增、出庫、入庫操作。分享給大家供大家參考,具體如下:

package com.jredu.oopch08;
public class Goods1 {
    private int id;
    private String name;
    private double price;
    private String uom;
    private int balance;
    public Goods1(int id,String name,double price,String uom,int balance) {
        super();
        this.id = id;
        this.name = name;
        this.price = price;
        this.uom = uom;
        this.balance = balance;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getPrice() {
        return price;
    }
    public void setPrice(double price) {
        this.price = price;
    }
    public String getUom() {
        return uom;
    }
    public void setUom(String uom) {
        this.uom = uom;
    }
    public int getBalance() {
        return balance;
    }
    public void setBalance(int balance) {
        this.balance = balance;
    }
}

package com.jredu.oopch08;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class TestGoods1 {
    private static Map map = new HashMap<>();
    private static Scanner in = new Scanner(System.in);
    public static void get() {
        Goods1 goods1 = new Goods1(1001,"脈動水蜜桃 ",7.0,"1.5l",50);
        Goods1 goods2 = new Goods1(1002,"桃李熟切片 ",6.5,"400g",10);
        Goods1 goods3 = new Goods1(1003,"吉白芝麻油 ",9.5,"125ml",20);
        Goods1 goods4 = new Goods1(1004,"雀巢奶咖啡",1.5,"13g",200);
        Goods1 goods5 = new Goods1(1005,"白玉黃豆芽 ",2.4,"350g",50);
        map.put(goods1.getId(),goods1);
        map.put(goods2.getId(),goods2);
        map.put(goods3.getId(),goods3);
        map.put(goods4.getId(),goods4);
        map.put(goods5.getId(),goods5);
    }
    public static boolean check(int id) {
        // 檢測匹配id
        if (!map.containsKey(id)) {
            // 沒有匹配id
            return false;
        } else {
            // 有匹配的id
            return true;
        }
    }
    public static void add() {// 新增商品
        System.out.println(">>新增商品");
        System.out.print("請輸入商品編號:");
        int id = in.nextInt();
        if (new TestGoods1().check(id)) {
            // 有匹配的id
            System.out.println("對不起,此商品已存在!");
        } else {
            System.out.print("請輸入商品名稱:");
            String name = in.next();
            System.out.print("請輸入商品單價:");
            double price = in.nextDouble();
            System.out.print("請輸入商品單位:");
            String uom = in.next();
            System.out.print("請輸入商品庫存:");
            int balance = in.nextInt();
            Goods1 goods6 = new Goods1(id,name,price,uom,balance);
            map.put(goods6.getId(),goods6);
            System.out.println("新增成功!");
        }
    }
    public static void show() {// 顯示商品資訊
        System.out.println("商品編號\t商品名稱\t\t商品單價\t單位\t數量");
        Set<Map.Entry<Integer,Goods1>> entrySet = map.entrySet();
        Iterator<Map.Entry<Integer,Goods1>> iter = entrySet.iterator();
        while (iter.hasNext()) {
            Map.Entry<Integer,Goods1> entry = iter.next();
            System.out.print(entry.getKey() + "\t");
            System.out.println(entry.getValue().getName() + "\t\t" + entry.getValue().getPrice() + "\t"
                    + entry.getValue().getUom() + "\t" + entry.getValue().getBalance());
        }
    }
    public static void inStore() {// 入庫
        System.out.println(">>商品入庫");
        System.out.print("請輸入商品編號:");
      int id = in.nextInt();
      for (int i = 0; i < map.size(); i++) {
          if (new TestGoods1().check(id)) {
                //有匹配的id
                System.out.print("請輸入入庫數量:");
                int count = in.nextInt();
                    int c = ((Goods1) map.get(id)).getBalance()+count;
                    ((Goods1) map.get(id)).setBalance(c);
                    break;
            }else{
                //沒有匹配的id
                System.out.println("對不起,此商品不存在!");
                break;
            }
        }
    }
    public void outStore() {// 出庫
        System.out.println(">>商品出庫");
        System.out.print("請輸入商品編號:");
        int id = in.nextInt();
        for (int i = 0; i < map.size(); i++) {
          if (new TestGoods1().check(id)) {
                //有匹配的id
                System.out.print("請輸入出庫數量:");
                int count = in.nextInt();
                if(count>((Goods1)map.get(id)).getBalance()){
                    System.out.println("庫存不足,出庫失敗!");
                }else{
                    int c = ((Goods1) map.get(id)).getBalance()-count;
                    ((Goods1) map.get(id)).setBalance(c);
                    break;
                }
            }else{
                //沒有匹配的id
                System.out.println("對不起,此商品不存在!");
                break;
            }
        }
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        TestGoods1 t = new TestGoods1();
        t.get();
        //t.add();
    //    t.show();
    //    t.inStore();
        t.show();
        t.outStore();
        t.show();
    }
}

更多java相關內容感興趣的讀者可檢視本站專題:《Java面向物件程式設計入門與進階教程》、《Java資料結構與演算法教程》、《Java操作DOM節點技巧總結》、《Java檔案與目錄操作技巧彙總》和《Java快取操作技巧彙總》

希望本文所述對大家java程式設計有所幫助。