java一维数组和二维数组结合应用实例,Java商品信息查询

下面的文章是综合一维数组二维数组的相关知识,以及数组排序的多种算法来实现商品信息查询的功能,一起来看看实例吧。

假设在仓库系统中,每件商品都有3个库存信息,分别是入库量、出库量和当前库存量。

定义一个一维数组来存储5件商品的名称,并定义一个二维数组来存储这5件商品的3个库存信息。

用户可以根据商品名称查询该商品的所有库存,也可以查看某个类别库存下数量小于100的商品名单,并将该类别的所有库存量按从低到高的顺序排列。

代码实现:(分别定义了一个一维数组和一个二维数组,用于存储商品的名称和对应的3个库存信息,接着根据名称可以查看该商品的库存信息,也可以查找某个库存中数量小于100的商品名称,最后,对指定的库存进行冒泡排序并输出)

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");
        }
    }
}

执行结果:

*************** 库存系统 ***************
请输入要查询库存信息的商品名称:
水杯
商品【水杯】的库存信息如下:
入库   出库   库存
50 45 789
*************** 查询库存不足 100 的商品 ***************
1.入库  2.出库  3.库存
请输入序号:
1
该类别下数量较少的商品有:
洗发水 纸巾 水杯
该类别的商品库存信息从低到高的排列如下:
40 50 50 100 898

你还想了解更多的相关java实例吗?请继续通过奇Q工具网来进行了解吧。

推荐阅读:

java一维数组应用实例,Java求最大和最小值

java一维数组应用实例,Java统计商品信息

Java一维数组,获取单个元素实例分享