为什么显示的是f=123456.125而不是f=123456.123呢???

为什么显示的是f=123456.125而不是f=123456.123呢???

package com;


public class Float {

public static void main (String[] args) {

//定义一个单精度浮点型变量,存放123456.123

float f=123456.123f;

System.out.println("f="+f);

}

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
提问者 Robin丶Deng 2018-09-13 15:12:13

我想说的是为什么会加2的

  • 这个就是浮点型的存储问题,可能会造成精度丢失,在浮点型数据的输出中,这个问题是常见的。祝学习愉快!
    2018-09-13 16:23:26
好帮手慕查理 2018-09-13 11:38:15

您好,因为浮点型的特殊存储结构,所以会有精度的损失。可以查看教辅《浮点型数据教辅.pdf》对于浮点数内容的补充。祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师