溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用JAVA實(shí)現(xiàn)商店案例

發(fā)布時(shí)間:2022-01-14 17:50:45 來(lái)源:億速云 閱讀:150 作者:小新 欄目:編程語(yǔ)言

這篇文章給大家分享的是有關(guān)如何使用JAVA實(shí)現(xiàn)商店案例的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

import java.util.ArrayList;
import java.util.Scanner;

/*
 *   超市管理系統(tǒng)主
 *   實(shí)現(xiàn):
 *     1. 商品數(shù)據(jù)的初始化
 *     2. 用戶的菜單選擇
 *     3. 根據(jù)選擇執(zhí)行不同的功能
 *       3.1 Read    查看商品
 *       3.2 Create  添加商品
 *       3.3 Delete  刪除商品
 *       3.4 Update  修改商品
 *
 *
 *   所有功能 ,必須定義方法實(shí)現(xiàn)
 *   主方法main  調(diào)用作用
 */
public class Shopp {

    public static void main(String[] args) {
        //創(chuàng)建ArrayList集合,存儲(chǔ)商品類(lèi)型,存儲(chǔ)數(shù)據(jù)類(lèi)型FruitItem類(lèi)型
        ArrayList<FruitItem> array = new ArrayList<FruitItem>();
        //調(diào)用商品初始化方法,傳遞集合
        init(array);
        while(true){
            //調(diào)用菜單方法
            mainMenu();
            //調(diào)用用戶選擇序號(hào)方法
            int choose = chooseFunction();
            switch (choose) {
            case 1:
                //調(diào)用1: 貨物 清單
                showFruitList(array);
            break;
            
            case 2:
                //2: 添加貨物
                addFruit(array);
            break;
            
            case 3:
                //3: 刪除貨物
                deleteFruit(array);
            break;
            
            case 4:
                //4: 修改貨物
                updateFruit(array);
            break;
            
            case 5:
                return ;

            default:
                System.out.println("輸入的序號(hào)沒(méi)有");
                break;
            }
        }
    }
    /*
     *  定義方法,實(shí)現(xiàn)商品的修改功能
     *  返回值: 無(wú)
     *  參數(shù): 集合
     *
     *  提示用戶選擇的是修改功能
     *  提示用戶輸入需要修改的商品編號(hào)
     *  遍歷集合,獲取每個(gè)FruitItem變量
     *  變量調(diào)用ID屬性,屬性和用戶輸入的編號(hào)比較
     *  如果相同:
     *    修改調(diào)FruitItem中的屬性值
     *    鍵盤(pán)輸入
     */
    public static void updateFruit(ArrayList<FruitItem> array){
        System.out.println("選擇的是修改功能");
        System.out.println("請(qǐng)輸入商品的編號(hào)");
        
        Scanner sc = new Scanner(System.in);
        int ID = sc.nextInt();
        //遍歷集合,獲取每個(gè)FruitItem變量
        for(int i = 0 ; i < array.size(); i++){
            FruitItem item = array.get(i);
            //獲取FruitItem的屬性ID,和用戶輸入的ID比較
            if(item.ID == ID){
                System.out.println("輸入新的商品編號(hào)");
                item.ID = sc.nextInt();
                
                System.out.println("輸入新的商品名字");
                item.name = sc.next();
                
                System.out.println("輸入新的商品價(jià)格");
                item.price = sc.nextDouble();
                System.out.println("商品修改成功");
                return ;
            }
        }
        System.out.println("輸入的編號(hào)不存在");
    }
    
    /*
     *  定義方法,實(shí)現(xiàn)商品的刪除功能
     *  返回值: 無(wú)
     *  參數(shù): 集合
     *
     *  刪除依靠的是商品的編號(hào)
     *  提示用戶選擇的是刪除功能
     *  鍵盤(pán)輸入商品的編號(hào)
     *  遍歷集合,獲取集合中的每個(gè)FruitItem變量
     *  變量調(diào)用屬性 ID, 和用戶的輸入的編號(hào),對(duì)比,相同就刪除
     */
    public static void deleteFruit(ArrayList<FruitItem> array){
        System.out.println("選擇的是刪除功能");
        System.out.println("請(qǐng)輸入商品的編號(hào)");
        Scanner sc = new Scanner(System.in);
        
        int ID = sc.nextInt();
        //遍歷集合
        for(int i = 0 ; i < array.size(); i++){
            //獲取到每個(gè)FruitItem變量
            FruitItem item = array.get(i);
            //變量,調(diào)用屬性ID,和用戶輸入的編號(hào)比較
            if( item.ID == ID){
                //移除集合中的元素
                //集合的方法remove實(shí)現(xiàn)
                array.remove(i);
                System.out.println("刪除成功");
                return;
            }
        }
        System.out.println("你輸入的編號(hào)不存在");
    }
    
    /*
     * 定義方法,實(shí)現(xiàn)商品的添加功能
     * 返回值:無(wú)
     * 參數(shù): 集合
     * 提示用戶選擇的是添加商品的功能
     *
     * 提示用戶輸入的是什么
     *
     * 創(chuàng)建FruitItem變量,變量調(diào)用的屬性
     * 將輸入的每個(gè)商品屬性進(jìn)行賦值
     */
    public static void addFruit(ArrayList<FruitItem> array){
        System.out.println("選擇的是添加商品功能");
        //創(chuàng)建Scanner變量
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入商品的編號(hào)");
        //輸入商品的編號(hào)
        int ID = sc.nextInt();
        //輸入商品的名字
        System.out.println("請(qǐng)輸入商品的名字");
        String name = sc.next();
        //輸入商品的單價(jià)
        System.out.println("輸入商品的單價(jià)");
        double price = sc.nextDouble();
        //創(chuàng)建FruitItem變量
        FruitItem item = new FruitItem();
        //item.屬性賦值
        item.ID = ID;
        item.name = name;
        item.price = price;
        array.add(item);
        System.out.println("商品添加成功");
    }
    
    /*
     *  定義方法,實(shí)現(xiàn)顯示貨物清單功能
     *  返回值: 無(wú)
     *  參數(shù): 集合
     *  遍歷集合,獲取集合中的每個(gè)FruitItem變量,變量,調(diào)用屬性
     */
    public static void showFruitList(ArrayList<FruitItem> array){
        System.out.println();
        System.out.println("================商品庫(kù)存清單================");
        System.out.println("商品編號(hào)         商品名稱                商品單價(jià)");
        //遍歷集合
        for(int i = 0 ; i < array.size(); i++){
            //集合get方法,獲取出每個(gè)FruitItem變量,可以使用FruitItem接受get結(jié)果
            FruitItem item = array.get(i);
            //變量item調(diào)用類(lèi)中屬性
            System.out.println(item.ID+"   "+item.name+"        "+item.price);
        }
    }
    
    /*
     *  定義方法,實(shí)現(xiàn)接受用戶的鍵盤(pán)輸入
     *  返回編號(hào)
     */
    public static int chooseFunction(){
        Scanner sc = new Scanner(System.in);
        return sc.nextInt();
    }
    
    /*
     * 定義方法,實(shí)現(xiàn)主菜單
     * 提示用戶哪些選擇 讓選擇序號(hào)
     * 返回值: 無(wú)
     * 參數(shù): 無(wú)
     */
    public static void mainMenu(){
        System.out.println();
        System.out.println("============歡迎光臨淼淼超市============");
        System.out.println("1: 貨物 清單   2: 添加貨物   3: 刪除貨物   4: 修改貨物  5: 退出");
        System.out.println("請(qǐng)您輸入要操作的功能序號(hào)");
    }
    
    /*
     * 定義方法,實(shí)現(xiàn)商品數(shù)據(jù)的初始化
     * 先將一部分?jǐn)?shù)據(jù),存儲(chǔ)集合中
     * 返回值: 無(wú)
     * 參數(shù) : 集合
     * 方法名: init
     */
    public static void init(ArrayList<FruitItem> array){
        //創(chuàng)建出多個(gè)FruitItem類(lèi)型,并且屬性賦值
        FruitItem f1 = new FruitItem();
        f1.ID = 9527;
        f1.name = "少林寺酥餅核桃";
        f1.price = 12.7;
        
        FruitItem f2 = new FruitItem();
        f2.ID = 9008;
        f2.name = "尚康雜糧牡丹餅";
        f2.price = 5.6;
        
        FruitItem f3 = new FruitItem();
        f3.ID = 9879;
        f3.name = "新疆原產(chǎn)哈密瓜";
        f3.price = 599.6;
        
        //創(chuàng)建的3個(gè)FruitItem類(lèi)型變量,存儲(chǔ)到集合中
        array.add(f1);
        array.add(f2);
        array.add(f3);
    }
    
}
/*
 *   自定義類(lèi), 描述商品信息
 *   商品的屬性
 *     編號(hào), int
 *     品名, String
 *     價(jià)格, double
 *     數(shù)量, int
 *     總價(jià), double
 *
 *   商品類(lèi)型,存儲(chǔ)到集合ArrayList中
 */
public class FruitItem {
    // 商品號(hào)
    int ID;
    // 商品名字
    String name;
    // 單價(jià)
    double price;
    // 數(shù)量
    int number;
    // 總金額
    double money;
}

感謝各位的閱讀!關(guān)于“如何使用JAVA實(shí)現(xiàn)商店案例”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI