求java Array和及平均数

本文介绍使用标准java循环和Stream api方式求java Array和及平均数。

数组元素求和

循环方式实现

为了求数组元素之和,我们可以简单迭代数组,并增加每个元素至累加变量,开始设置sum为0,然后依次累加:

public static int findSumWithoutUsingStream(int[] array) {int sum = 0;for (int value : array) {sum += value;}return sum;
}

流方式实现

可以使用流方式实现通用功能:

public static int findSumUsingStream(int[] array) {return Arrays.stream(array).sum();
}

需要注意的是,sum()方法仅支持原始类型流。如果我们想使用包装类型Integer流,我们必须使用mapToInt方法转换至IntStream,然后我们可以使用sum方法:

public static int findSumUsingStream(Integer[] array) {return Arrays.stream(array).mapToInt(Integer::intValue).sum();
}

数组元素求平均值

非流方式实现

已经知道如何求和,平均值就不难了。平均值=和/个数:

public static double findAverageWithoutUsingStream(int[] array) {int sum = findSumWithoutUsingStream(array);return (double) sum / array.length;
}

注意:
1. 一个整数除以另一个整数,返回精确值,所以转换第一个整数为double。
2. java数组有length属性,其为数组元素个数。

流方式实现

public static double findAverageUsingStream(int[] array) {return Arrays.stream(array).average().orElse(Double.NaN);
}

IntStream.average方法返回OptionalDouble,可能不包含值,所以需要指定一个特定值。

总结

本文介绍两种方法针对数组元素求和及平均数。

求java Array和及平均数相关推荐

  1. 在Java中求数组的和及平均数

    本文介绍使用标准java循环和Stream api方式求java Array和及平均数 数组元素求和 循环方式实现 为了求数组元素之和,我们可以简单遍历数组,并使用get方式遍历数组,开始设置sum为 ...

  2. Java 求一组数组中的平均数

    求一组数组中的平均数 题目 输入10个整数,输出这10个整数的的平均数,要求输出的平均数保留2位小数 输入样例 1 2 3 4 5 6 7 8 9 10 输出样例 5.50 import java.u ...

  3. java大神请出来_求java大神,请分析以下代码,写出执行结果,并解释每行结果输出的原因。...

    求java大神,请分析以下代码,写出执行结果,并解释每行结果输出的原因.classPlate{publicPlate(){System.out.println("inPlateconstru ...

  4. 用java编写圆锥_求java大神帮忙 求大神帮助!Java

    导航:网站首页 > 求java大神帮忙 求大神帮助!Java 求java大神帮忙 求大神帮助!Java 相关问题: 匿名网友: 普通类 public class CircularA { //求圆 ...

  5. java微信签名什么意思,java,_求java实现微信签名,java - phpStudy

    求java实现微信签名 1.求java怎么实现微信签名 package sign; import java.security.MessageDigest; public class MD5Util { ...

  6. java array缓存_有java数组

    [JAVA零基础入门系列]Day10 Java中的数组 [JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 D ...

  7. JzxxOJ 1180: 【入门】求N个整数的平均数、众数和中位数

    求N个整数的平均数.众数和中位数 题目描述 求N个整数的平均数,众数和中位数. 输入 第一行为整数N(5 <= N <= 10000 ) 第二行为空格隔开的N个数Ai(0 <= Ai ...

  8. Java Array、List、Set互相转化

    Java ArrayListSet互相转化 ArrayListSet互转实例 1 ArrayList互转 2 ListSet互转 3 ArraySet互转 ArraysasList 和 Collect ...

  9. java array和list互相转换

    打印 注:打印时不是地址而是值 System.out.println(Arrays.toString(nums)); 查看变量的数据类型 变量名.getClass().toString() list转 ...

最新文章

  1. java iterator 将int_ListIteratorlt;Egt; listIterator(int index)_Java.util包|WIKI教程
  2. 为了OFFER,我加深学习队列,现在还一脸懵逼
  3. alter table move与shrink space
  4. OpenShift上具有NetBeans的Java EE
  5. 边缘计算助力云游戏成为5G时代的杀手级应用
  6. 小米登录协议分析_联想前副总裁常程跳槽小米数月后,波澜再起
  7. windows 8,关闭随意窗体都提示“已停止工作”的解决的方法
  8. vs2015项目导出为Qt项目
  9. matlab函数anova,MATLAB进行单因素方差分析-ANOVA
  10. WebLogic 控制台乱码
  11. Android 网络开发框架的选择
  12. php 参数类对象以及改变对象,php类和对象--重载
  13. Sitecore 6.4 升级Sitecore 8.2.7准备
  14. python代码写不出来怎么办_为什么python这个代码写出来的图片不显示?
  15. 一区期刊影响因子 2018 2019
  16. eyb:Java代码通过FastDFS实现文件上传
  17. Android通过RecyclerView实现手风琴效果
  18. tier1和tier2_数据中心Tier1-Tier2-Tier3-Tier4
  19. 15.计算几何: 坐标值的精度【eps、sgn()、dcmp()】+ 平面上的点用struct表示 + 向量的定义与加减乘除
  20. IP归属地显示的简单实现代码

热门文章

  1. 透光按键激光打标机,激光打标机
  2. VM虚拟机安装的CENTOS7系统IP自动变化的问题解决
  3. wifidog java_GitHub - FangStarNet/wifidog-java-portal: 由 Java 实现的 WiFiDog 认证服务
  4. ascl码在计算机中用什么表示汉字,2018年3月计算机一级考试MSOffice考前特训习题6...
  5. Essential Linux Device Drivers 中文版第2章
  6. Linux下的逻辑卷建立以及磁盘阵列的概念
  7. Vue代理解决生产环境跨域问题 部署必备干货
  8. 全角数字转化为半角(正确)
  9. Java 中文api pdf_Java API中文完整版.pdf
  10. android中添加arial字体(非android默认字体)