Double NaN
2024-09-08 17:11:39
import java.math.BigDecimal;
import java.math.RoundingMode; public class Test {
public static void main(String f[]) { Double dto = 1.0/0;
Double vo = dto + 2.0;
Double po = getPresicionScale(vo);
} static Double getPresicionScale(Double actualValue)
{
Double value=0.0;
if(actualValue!=null)
{
return BigDecimal.valueOf(actualValue).setScale( 5, RoundingMode.DOWN).doubleValue();
}
return value;
}
}
Exception in thread "main" java.lang.NumberFormatException: Character I is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
at java.base/java.math.BigDecimal.<init>(BigDecimal.java:518)
at java.base/java.math.BigDecimal.<init>(BigDecimal.java:401)
at java.base/java.math.BigDecimal.<init>(BigDecimal.java:834)
at java.base/java.math.BigDecimal.valueOf(BigDecimal.java:1304)
at com.jds.test.httpproxy.miniserver.Test.getPresicionScale(Test.java:19)
at com.jds.test.httpproxy.miniserver.Test.main(Test.java:11)
報錯的堆棧奇特
public static BigDecimal valueOf(double val) {
// Reminder: a zero double returns '0.0', so we cannot fastpath
// to use the constant ZERO. This might be important enough to
// justify a factory approach, a cache, or a few private
// constants, later.
return new BigDecimal(Double.toString(val));
}
1
1/0 沒報錯
1/0+2 沒報錯
Double -> double 沒報錯
在BigDeciaml構造報錯
2
Double.isNaN isInfite 判斷
最新文章
- How do I remove javascript validation from my eclipse project?
- 反复请求某个URL缓存严重解决办法
- user32.dll
- Tomcat打印运行时日志(控制台),访问日志,启动日志
- AnyCAD脚本模型
- 2015年校园招聘12家IT公司面试体验
- 利用Excel批量高速发送电子邮件
- QQ聊天界面的布局和设计(IOS篇)-第一季
- Java之Static静态修饰符详解
- linux脚本后台监控执行指定程序的状态(假设程序是死的重新启动程序)
- Visual Studio跨平台开发实战(2) - Xamarin.iOS基本控制项介绍
- List,map,Set区别
- 简洁明了的插值音频重采样算法例子 (附完整C代码)
- ubuntu挂载的NTFS文件编译失败问题
- ECMA Script 6_数组的扩展_扩展运算符
- 2018-2019-1 20165318 20165326 实验五 通讯协议设计.md
- python测试开发django-47.xadmin上传图片和文件
- ELK初探
- excel的宏与VBA入门(二)——数据类型与变量
- Daily Scrumming* 2015.10.27(Day 8)