小编典典

只需对您的代码进行一些小的修改即可(为了清楚起见,使用了一些var重命名):

double sum = 0; //average will have decimal point

for(int i=0; i < args.length; i++){

//parse string to double, note that this might fail if you encounter a non-numeric string

//Note that we could also do Integer.valueOf( args[i] ) but this is more flexible

sum += Double.valueOf( args[i] );

}

double average = sum/args.length;

System.out.println(average );

注意,循环也可以简化:

for(String arg : args){

sum += Double.valueOf( arg );

}

编辑:OP似乎要使用args数组。这似乎是一个String数组,因此相应地更新了答案。

更新 :

正如zoxqoj正确指出的那样,上面的代码未考虑整数/双精度溢出。尽管我假设输入值将足够小而不会出现问题,但以下代码段可用于非常大的输入值:

BigDecimal sum = BigDecimal.ZERO;

for(String arg : args){

sum = sum.add( new BigDecimal( arg ) );

}

这种方法有几个优点(尽管速度较慢,所以不要将其用于时间紧迫的操作):

保持精度,将精度加倍,您将逐渐降低数学运算数量的精度(或完全不获得精确的精度,具体取决于数字)

实际上消除了溢出的可能性。但是请注意,a BigDecimal可能大于a double或的大小long。

2020-10-16

bigdecimal 平均数_用Java计算平均值相关推荐

  1. Java实现若干个数计算平均值并保留小数位 java计算平均值 java四舍五入保留小数

    Java实现若干个数计算平均值并保留小数位 java计算平均值 java四舍五入保留小数 一.需求 1.在项目中,要计算若干个指标的平均值,找了一圈,发现JDK中没有提供,于是乎,造一个. 2.因若干 ...

  2. java bigdecimal 开方_在Java中BigDecimal的平方根(Square root of BigDecimal in

    我们可以计算平方根BigDecimal仅使用的Java API而不是定制的100线算法在Java中? Answer 1: 我用这个和它的作品相当不错的. 下面是该算法如何工作在较高水平的例子. 编辑: ...

  3. java 方差_使用java计算数组方差和标准差

    使用java计算数组方差和标准差 觉得有用的话,欢迎一起讨论相互学习~ 首先给出方差和标准差的计算公式 代码 public class Cal_sta { double Sum(double[] da ...

  4. bigdecimal 平均数_云函数 · – Bmob后端云

    Java云函数¶ 云函数是一段部署在服务端的代码片段,采用 java 或 node.js 进行编写,然后部署运行在Bmob服务器 通过云函数可以解决很多复杂的业务逻辑,从此无需将要将大量的数据发送到移 ...

  5. java计算平均值_Java计算平均成绩

    编写一个程序,根据用户输入的总人数和总成绩计算平均成绩.要求程序能够处理总人数或者总成绩不是数字时的情况. 根据题目要求得知,在程序中需要对多种异常情况进行不同的处理.此时就用到了在<Java ...

  6. java读取文本单词_使用Java计算文本文件中的单词数

    我们可以使用Java的BufferedReader类读取文件中的单词,然后根据空格字符拆分读取的数据.请参阅以下示例: 示例 考虑类路径中的以下文本文件. test.txtThis is Line 1 ...

  7. java 年计算_用Java计算leap年

    这是家庭作业,我已经获得了成绩,但是我没有在代码中实现leap年.这是一个简单的程序,可以根据用户输入显示一个月内的数字.我唯一不知道的是一种实现implement年的方法,这种writing年将在2 ...

  8. java 伽马函数_用java计算gamma函数

    仿matlab的gamma函数的做法,做的 .在 x >16后 x为整数时 计算误差偏大 . public class ComputeGamma { static double x = 0; s ...

  9. java正态分布_使用Java计算正态分布

    您可以使用 error function中提供的 error function,如 here和 here所述. 附录:@Brent Worden answer中提出的方法大大简化了这些问题的解决方案. ...

最新文章

  1. 理解JSON.stringify()高级用法
  2. 链家java_链家2018春招Java工程师编程题题解
  3. webpack 保存文件后自动打包_继webpack后又一打包神器Parcel
  4. mysql.host_mysql启动提示mysql.host 不存在,启动失败的解决方法
  5. 磁共振t1t2信号记忆顺口溜_10分钟记住脑出血核磁表现(一):T1、T2篇
  6. MySQL/InnoDB中,乐观锁、悲观锁、共享锁、排它锁、行锁、表锁、死锁概念的理解...
  7. 华东师范大学计算机模拟试题,华东师范大学网院《计算机入门》模拟试题(卷)(ABCD卷合,含详细答案解析).doc...
  8. 用c语言编写24点游戏,C语言解24点游戏程序
  9. 华为最新解bl解锁码计算工具_黔隆科技刷机教程红米note4X低配版忘记密码刷机解锁降级救砖解屏幕锁账户锁教程...
  10. 一个计算机爱好者的不完整回忆(三十一)我的拼音输入法
  11. Java 简单计算器
  12. Android动态设置view的大小及其位置
  13. STM32CubeIDE使用相关设置经验
  14. java批量添加注解到所有业务接口
  15. 公孙殃同学是很有见地啊
  16. kodi remote android,使用Android和iOS在Win10系统中设置Kodi Remote方法
  17. 前端展示图片-处理图片拉伸
  18. 用手机计算机计算三次根号,手机自带计算器不行求推荐一个能开3次根号的 – 手机爱问...
  19. javaweb总——注:跟着狂神学的
  20. Visual Studio 2015简体中文版

热门文章

  1. Excel调用有道词典实现批量翻译
  2. CSS 3D动态立体图形
  3. 喜欢计算机专业的理由英语作文,计算机专业英文自我评价范文
  4. 单盘位小先锋 群晖DS112j家用NAS评测
  5. 【图像分割】基于混洗Shuffled Complex Evolution实现图像分割附matlab代码
  6. 如此优秀,这18个 Python 高效编程技巧真的太香了
  7. RabbitMQ基础篇 (一)
  8. (Spring+SpringMVC+mybatis)SSM选课管理系统/课程管理系统 完整项目介绍
  9. Tips: Disk Performance On FreeBSD
  10. 神经网络学说的主要观点,神经网络研究属于下列