数组的案例

1.数组案例:数组数据统计

现在假设给你一个数组,要求可以统计出数组的最大值最小值平均值总和。这些操作肯定是需要通过循环的操作形式完成。
范例 1:基本实现

public class Test{
    public static void main(String[] args){
        int data [] = new int []{1,2,3,4,5,66,7,8,9};
        int max = data[0]; //假设第一个数据为数组中的最大内容
        int min = data[0]; //假设第一个数据为数组中的最小内容
        int sum = data[0];
        for(int x=1;x<data.length;x++){
            sum += data[x];
            if(data[x] > max){  //当前内容大于最大内容
                max = data[x];
            }
            if(data[x] < min){  //当前内容小于最小内容
                min = data[x];
            }
        }
        
        System.out.println("最大值:"+max);
        System.out.println("最小值:"+min);
        System.out.println("总合:"+sum);
        System.out.println("平均值:"+sum/data.length);
    }
    //定义一个专门进行数组输出的方法
    public static void printArray(int temp[]){
        for(int x=0;x<temp.length;x++){
            System.out.print(temp[x] + ",");
        }
        System.out.println("");
    }

}

此时确实实现了所需要的功能,但是随之会发现主方法中的代码有些多。

主方法实际上就相当于一个客户端调用,那么既然是客户端调用,里面的代码应该越简单越好。

范例 2:改进代码


public class Test{
    public static void main(String[] args){
        int data [] = new int []{1,2,3,4,5,66,7,8,9};
        double result[] = stat(data); //数据统计
        System.out.println("最大值:"+result[0]);
        System.out.println("最小值:"+result[1]);
        System.out.println("总合:"+result[2]);
        System.out.println("平均值:"+result[3]);
    }
    //此时需要返回的数据一共有四个,那么一个方法返回一种数据类型,所以
    //应该使用数组返回
    // 数组[0]为最大值,数组[1]为最小值,数组[2]为总和,数组[3]为平均值。
    public static double[] stat(int data[]){
        double retData[] = new double[4];
        retData[0]= data[0];
        retData[1]= data[0];
        retData[2]= data[0];
        for(int x=1;x<data.length;x++){
            retData[2] += data[x];
            if(data[x] > retData[0]){  //当前内容大于最大内容
                retData[0] = data[x];
            }
            if(data[x] < retData[1]){  //当前内容小于最小内容
                retData[1] = data[x];
            }
        }
        retData[3] = retData[2] / data.length;
        return retData;
    }
    //定义一个专门进行数组输出的方法
    public static void printArray(int temp[]){
        for(int x=0;x<temp.length;x++){
            System.out.print(temp[x] + ",");
        }
        System.out.println("");
    }
}

在整个进行程序开发的时候,主方法不要涉及到过于复杂的程序逻辑,只需要关注结果。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,198评论 19 139
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,724评论 8 265
  • 从小学便有码字的习惯,断断续续了十多年。 于是,在每一次在心情低落或者悲观厌世的时候,都能在文字里找到一丝力量。所...
    女公子99阅读 320评论 3 2
  • 01 我们忘了有一个人愿意用自己的生命来换取你的生命,他们心愿是儿女快乐就是他们人生的幸福,即使在人生中他们经历了...
    贵人常伴阅读 2,645评论 0 2
  • 我们记得多少过去?我们拥有多少未来?昨天的事情是否已经放下,今天的心情又是如何?明天,我们该如何面对呢?
    陈桥生阅读 161评论 0 0