当前位置:
首页
文章
后端
详情

Java数组练习之商品信息统计 附详细代码

学习任何知识之后,都需要经过测试、考试等方式来验证自己是否真的学会了。代码编程也是一样的,也是需要通过练习测试,才能验证自己是否真的明白了。下面,我将通过Java数组的基本知识,来实现商品信息统计的小程序。

一、题目分析

题目:

目前,一个货架上有5件商品。需要在输入商品价格之后,自动输出其中最高价格的商品,商品的价格总和和商品的平均价格。

分析:

根据题目要求,商品价格的数据类型一定是相同类型的,那么可以使用一个一维数组来存储商品的价格。因为商品价格是未知的,需要自己手动输入,此时就需要 Java 中的一个工具类 Scanner类,通过 for 循环将输入的值赋给数组。通过遍历数组的方法,将数组内的每个元素进行相加,即获得商品总价格;同时假设第一个商品最贵,进行遍历的同时,判断下一个是否比给定值要大,是的话就取而代之;在最后除以数组的总长度,即可以获得商品的平均价。

二、具体实现

(1)先声明数组的数据类型,以及声明最大值、总价格以及平均价的类型。

        // 声明数组的类型。
        int[] prices=new int[5];
        // 声明最大值,总价格和平均价
        int maxPrice, sumPrice = 0, avgPrice;

(2)导入 Scanner 工具类

import java.util.Scanner;

    Scanner sc=new Scanner(System.in);

(3)将输入的值通过 for 循环赋给数组

        // 输入5个商品的价格
        System.out.println("请输入5个商品的价格:");
        // 循环将输入的值赋给数组
        for (int i = 0; i < 5; i++) {
            prices[0] = sc.nextInt();
        }

(4)通过 for 循环以及 if 判断,计算出数组中总价格和最大值,并通过除以数组长度,得出平均价格。

        // 假设第一件商品是最贵的
        maxPrice = prices[0];
        // 循环遍历数组
        for (int i = 0; i < prices.length; i++) {
            sumPrice += prices[i]; // 价格进行汇总
            // 添加判断,如果比最大价格要大,那么就取而代之
            if (maxPrice < prices[i]){
                maxPrice = prices[i];
            }
        }
        // 进行平均值计算
        avgPrice = sumPrice / prices.length;

(5)打印结果

        System.out.println("最大价格:"+maxPrice);
        System.out.println("总价格:"+sumPrice);
        System.out.println("平均结果:"+avgPrice);

请输入5个商品的价格:
20
15
32
16
24
最大价格:24
总价格:24
平均结果:4

三、完整代码

import java.util.Scanner;

public class Demo01 {

    public static void main(String[] args) {
        // 声明数组的类型。
        int[] prices = new int[5];
        // 声明最大值,总价格和平均价
        int maxPrice, sumPrice = 0, avgPrice;

        Scanner sc=new Scanner(System.in);
        // 输入5个商品的价格
        System.out.println("请输入5个商品的价格:");
        // 循环将输入的值赋给数组
        for (int i = 0; i < 5; i++) {
            prices[0] = sc.nextInt();
        }

        // 假设第一件商品是最贵的
        maxPrice = prices[0];
        // 循环遍历数组
        for (int i = 0; i < prices.length; i++) {
            sumPrice += prices[i]; // 价格进行汇总
            // 添加判断,如果比最大价格要大,那么就取而代之
            if (maxPrice < prices[i]){
                maxPrice = prices[i];
            }
        }
        // 进行平均值计算
        avgPrice = sumPrice / prices.length;

        System.out.println("最大价格:"+maxPrice);
        System.out.println("总价格:"+sumPrice);
        System.out.println("平均结果:"+avgPrice);
    }
}

四、总结

以上就是关于 Java 数组学习后,做一个商品信息统计的小程序代码来验证自己的学习成果的全部内容。想要了解更多相关 Java 其他方面的内容,可以搜索W3Cschool里面的相关文章。如果本文对大家的学习有所帮助,还希望大家能够多多关注和支持我们!


免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统