Java float精度丢失问题的解决
之前在进行蓝桥杯赛题训练的时候,有一题涉及到实数,提交以后有一个案例通过不了,检查一看发现是数据精度丢失了,导致最终的结果出错,现记录如下。
首先,让我们来测试一下
测试代码:
import java.util.Scanner;
public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner sca=new Scanner(System.in);while(true) {float f=sca.nextFloat();System.out.println(f);}}
}
结果:
所以Java是存在数据丢失现象的
解决办法:
import java.util.Scanner;
public class test {public static void main(String[] args) {// TODO Auto-generated method stubScanner sca=new Scanner(System.in);while(true) {String s=sca.nextLine();float f=Float.parseFloat(s);double d=Double.parseDouble(s);System.out.println("float:"+f);System.out.println("double:"+d);}}}
结果:
所以要保证精度,只能用double进行存储。
备注:当然,直接将输入数据存储为double也是可以的,之前一直没注意到float和double在存储小数精度上的区别。
测试代码(将float换成double):
double d=sca.nextDouble();
结果:
Java float精度丢失问题的解决相关推荐
- double java 精度丢失_java中double和float精度丢失问题及解决方法
在讨论两位double数0.2和0.3相加时,毫无疑问他们相加的结果是0.5.但是问题总是如此吗? 下面我们让下面两个doubles数相加,然后看看输出结果: @Test public void te ...
- [ JAVA编程 ] double类型计算精度丢失问题及解决方法
[ JAVA编程 ] double类型计算精度丢失问题及解决方法 参考文章: (1)[ JAVA编程 ] double类型计算精度丢失问题及解决方法 (2)https://www.cnblogs.co ...
- js做四则运算时,精度丢失问题及解决方法
js做四则运算时,精度丢失问题及解决方法 参考文章: (1)js做四则运算时,精度丢失问题及解决方法 (2)https://www.cnblogs.com/smile-tianxia/p/117149 ...
- java中double类型精度丢失问题及解决方法
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源: https://blog.csdn.net/yacolsp ...
- java int转float精度丢失问题
前几天,看java核心卷上面有一句java的int转float会有精度丢失的问题, 第一次看的不太深入,最近又碰到了这个问题,就去深入的看了下. 建议一块看看这些(有助于理解下面的问题) 源码,反码, ...
- double operator[](int i)_java中double类型精度丢失问题及解决方法
原文链接:https://blog.csdn.net/yacolspace/article/details/78287394 double类型数据加减操作精度丢失问题 今天在项目中用到double类型 ...
- double类型精度丢失问题以及解决方法
double类型精度丢失问题: (1)加法运算. public static void main(String[] args) {double number1 = 1;double number2 = ...
- BigDecimal操作double、float精度丢失问题
一.问题 最近使用BigDecimal进行数值加减运算的时候踩了一个小坑:BigDecimal操作double.float数值时精度丢失. 举个例子: public static void main( ...
- 关于double与float精度丢失问题~看完我明白了☆
今天刷面试题时,看到了(精度丢失)这个问题,今天来通过参考资料,把它总结一下 目录 ①<精度丢失>长什么样? ②为什么会精度丢失? ③用BigDecimal类解决精度丢失的问题 ①< ...
最新文章
- win7下安装dynamips完全版
- 快速找到thtmlbUtil的定义位置
- 贷款秒拒?你可能进了“灰名单”!
- 为什么jupyterlab运行程序的时候会自动停止_气象人的JupyterLab
- 在Ubuntu下设置笔记本外接显示器(双显示器)
- Python操作Excel文件汇总数据案例一则
- 较为综合的c语言题目,c语言考试综合题.doc
- 服务器上使用 git 更新 wordpress 内核方案
- ubuntu两个conda安装和切换
- 自制操作系统(五) 保护模式寻址原理、字符鼠标指针显示
- Qt之解决error: member access into incomplete type ‘UI::XXX‘
- python set_Python Set联合
- PHP+shell实现多线程的方法
- 打乱 数字_“142857”金字塔中的神秘数字,其中隐藏什么秘密?
- 双主动桥隔离双向DC-DC变换器(一)摘要、引言
- 进销存excel_Excel小技巧|手把手教你制作简易的进销存管理系统
- Unity使用MikuMikuDance
- 设备管理器---usb大容量储存设备感叹号,USB大容量存储设备无法启动
- php开发岗前培训心得体会范文,岗前培训心得体会范文
- kali Linux命令大全
热门文章
- TimeVallee时光天地在海南开设首个免税精品店;张雨绮出任I Do克拉定制代言人 | 美通企业日报...
- 2019高考,高考语文作文试题
- python 中 with 的用法和原理
- 【商务之星:GMC】
- SQLserver----对成绩表、笔试成绩提高5分 100分封顶
- 计算机黑屏死机,电脑黑屏死机怎么解决(一键修复电脑黑屏死机的方式)
- 如果计算机黑屏请分析原因是什么原因,电脑系统黑屏死机故障原因分析处理
- 英雄联盟怎么查服务器维护时间,《英雄联盟》维护时间查询官网入口在哪 维护时间查询官网...
- 僕らの手には何もないけど、(尽管我们手中空无一物)--罗马音歌词
- 一年级专用计算机,一年级计算机教案