C語言中文網 目錄
首頁 > Java教程 > Java數組處理 閱讀:1,163

Java商品信息查詢

綜合一維數組和二維數組的相關知識,以及數組排序的多種算法來實現商品信息查詢的功能。

假設在倉庫系統中,每件商品都有 3 個庫存信息,分別是入庫量、出庫量和當前庫存量。定義一個一維數組來存儲 5 件商品的名稱,并定義一個二維數組來存儲這 5 件商品的 3 個庫存信息。用戶可以根據商品名稱查詢該商品的所有庫存,也可以查看某個類別庫存下數量小于 100 的商品名單,并將該類別的所有庫存量按從低到高的順序排列。

具體的代碼如下:
import java.util.Arrays;
import java.util.Scanner;
public class Test28
{
    public static void main(String[] args)
    {
        Scanner input=new Scanner(System.in);
        String[] products={"洗發水","紙巾","水杯","牙膏","香皂"};
        int[][] amounts={{50,80,90},{40,80,78},{50,45,789},{100,685,55},{898,754,63},{99,478,685}};
        System.out.println("*************** 庫存系統 ***************");
        System.out.println("請輸入要查詢庫存信息的商品名稱:");
        String name=input.next();
        for(int i=0;i<products.length;i++)
        {
            if(products[i].equals(name))
            {
                System.out.println("商品【"+products[i]+"】的庫存信息如下:");
                System.out.println("入庫 \t 出庫 \t 庫存");
                for(int j=0;j<3;j++)
                {
                    System.out.print(amounts[i][j]+"\t");
                }
                break;
            }
        }
        System.out.println("\n*************** 查詢庫存不足 100 的商品 ***************");
        System.out.println("1.入庫 \t2.出庫 \t3.庫存");
        System.out.println("請輸人序號:");
        int no=input.nextInt();
        int[] temp=new int[5];    //定義數組,存儲該類別的所有商品
        System.out.println("該類別下數量較少的商品有:");
        for(int i=0;i<5;i++)
        {
            temp[i]=amounts[i][no-1];    //將指定類別的所有商品名稱存儲到temp數組中
            if(amounts[i][no-1]<60)
            {
                System.out.print(products[i]+"\t");
            }
        }
        //使用冒泡排序,將商品的庫存量以從低到高的順序排列
        for(int i=1;i<temp.length;i++)
        {
            for(int j=0;j<temp.length-i;j++)
            {
                if(temp[j]>temp[j+1])
                {
                    int x=temp[j];
                    temp[j]=temp[j+1];
                    temp[j+1]=x;
                }
            }
        }
        System.out.println("\n該類別的商品庫存信息從低到高的排列如下:");
        for(int i=0;i<temp.length;i++)
        {
            System.out.print(temp[i]+"\t");
        }
    }
}

在本案例中,分別定義了一個一維數組和一個二維數組,用于存儲商品的名稱和對應的 3 個庫存信息。接著根據名稱可以查看該商品的庫存信息,也可以查找某個庫存中數量小于 100 的商品名稱。最后,對指定的庫存進行冒泡排序并輸出。

運行程序,執行結果如下所示。
*************** 庫存系統 ***************
請輸入要查詢庫存信息的商品名稱:
水杯 商品【水杯】的庫存信息如下
入庫 出庫 庫存
50   45   789
*************** 查詢庫存不足 100 的商品 ***************
1.入庫 2.出庫 3.庫存 請輸人序號:
1
該類別下數量較少的商品有:
洗發水 紙巾 水杯
該類別的商品庫存信息從低到高的排列如下:
40 50 50 100 898 

精美而實用的網站,提供C語言、C++、STL、Linux、Shell、Java、Go語言等教程,以及socket、GCC、vi、Swing、設計模式、JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo
极速pk10开户