项目场景:

一个整数除以0.0结果为整形或double形式结果是不一样的。
一个double0.0除以一个0.0结果也是不确定的。


问题描述

    public void method1() {int i = 10;int j1 = i / 0;     //报错double j = (double)i / 0.0;  //返回一个极大值InfSystem.out.println(j);double d1 = 0.0;double d2 = d1 / 0.0;System.out.println(d2);    //返回一个Nan}

原因分析:

这个原因是由于jvm的规定:

  1. 整形除以0,直接报错,因为无法得到极大值,所有导致运算结果溢出
  2. 对于浮点数来说,也是无法获得极大值的,直接溢出,但是返回一个无穷大inf,而不报错。
  3. 而对于浮点除以浮点数,结果可能是1可以是无穷大,而没用明确的定义,因此返回NaN

6.5Java 算术运算过程中的NaN和无穷大相关推荐

  1. 模型训练过程中产生NAN的原因分析

    模型训练过程中产生NAN的原因分析 在模型的训练过程中发现,有时在经过多轮训练后loss会突然变为nan.loss变为nan也就使权重更新后的网络里的参数变为了nan,这样就使整个训练无法再进行下去了 ...

  2. pytorch训练 loss=inf或者训练过程中loss=Nan

    造成 loss=inf的原因之一:data underflow 最近在测试Giou的测试效果,在mobilenetssd上面测试Giou loss相对smoothl1的效果: 改完后训练出现loss= ...

  3. 《深度学习笔记》——在训练过程中出现nan的调试笔记

    1 出现nan的理论分析 从本质上来说,"出现nan"现象主要是因为数值超出当前数据类型的表示范围,其含义是指"Not a Number",常在浮点数运算中出现 ...

  4. Pytorch训练模型损失Loss为Nan或者无穷大(INF)原因

    目录 1. Nan 和 INF 2.出现 Nan 和 INF 常见原因汇总 3.原因分析与解决方法 3.1.输入数据有误 3.2.学习率过高 --> 梯度爆炸进 --> Nan 3.3.损 ...

  5. pytorch训练过程中loss出现NaN的原因及可采取的方法

    在pytorch训练过程中出现loss=nan的情况 1.学习率太高. 2.loss函数 3.对于回归问题,可能出现了除0 的计算,加一个很小的余项可能可以解决 4.数据本身,是否存在Nan,可以用n ...

  6. matlab损失函数出现nan,[译]在训练过程中loss出现NaN的原因以及可以采取的方法。...

    1.梯度爆炸 原因:在学习过程中,梯度变得非常大,使得学习的过程偏离了正常的轨迹. 症状:观察输出日志(runtime log)中每次迭代的loss值,你会发现loss随着迭代有明显的增长,最后因为l ...

  7. 神经网络训练过程中出现loss为nan,神经元坏死

    最近在手撸Tensorflow2版本的Faster RCNN模型,稍后会进行整理.但在准备好了模型和训练数据之后的训练环节中出现了大岔子,即训练过程中loss变为nan.nan表示not a numb ...

  8. Java中遭遇NaN

    虽然几乎每种处理器和编程语言都支持浮点运算,但大多数程序员很少注意它.这容易理解 ,我们中大多数很少需要使用非整数类型.除了科学计算和偶尔的计时测试或基准测试程序,其它情况下几乎都用不着它.同样,大多 ...

  9. JCP:曝气生物滤池处理焦化废水过程中N2O和NO的产生机理与群落功能研究

    曝气生物滤池处理焦化废水的N2O和NO排放:主要来源和微生物群落 N2O and NO emission from a biological aerated filter treating cokin ...

最新文章

  1. React和Jquery比较
  2. 怎么样让自己更加从容的面对生活
  3. 阿里云直播PHP SDK如何使用
  4. 万字长文|线性代数的本质课程笔记完整合集!
  5. 二叉树的最小深度Python解法
  6. vue 判断对象不为空_Vue 学习笔记(二):实例
  7. python3.x教程_Python3.x基础教程1
  8. 爷青结,Microsoft 放弃 Windows 95 时代的图标
  9. ThinkPHP6校园疫情防控管理系统
  10. python如何输出整数_如何根据Python中的输入输出整数和浮点值?
  11. ionic2中的订单详情页面
  12. 2022年熔化焊接与热切割题库
  13. 实验楼Linux入门:Linux用户管理
  14. Java相关软件下载地址
  15. hiber+spring继续找bug
  16. 方差分析——单因素方差分析
  17. 把下列c语言的语句改写成汇编语言的程序片段,其中变量都为整形变量,汇编程序设计读书笔记(4)...
  18. android app wifi密码,无广告查看wifi密码的软件-WiFi密码查看清爽版app下载V999安卓版-西西软件下载...
  19. speedoffice表格中如何隐藏网络线
  20. AutoCAD生成png透明图像

热门文章

  1. java实现短信群发功能
  2. imageJ 如何下载plugin_OmegaT如何调用网易有道翻译API进行机器翻译
  3. 【校验码 - 循环冗余校验码CRC】
  4. 无线风力报警仪塔吊安全助手使用的意义
  5. 第二届中国数据安全治理高峰论坛在京召开
  6. java判断字符的大小写_java 字符串中判断字母大小写方法
  7. Java基础知识之扫描器(Scanner)
  8. 专家:目前的弱人工智能可能具备“自我意识”的觉醒
  9. web worker实现一个简单的异步编程
  10. 关于小红伞免费V9简体中文版、v10 出现“SSL提示不能安装的解决方法