java 中float 和double有什么区别,对于赋值来说,求解。谢谢!

 我来答
会飞的蚂蚁H
2019-10-18
知道答主
回答量:5
采纳率:100%
帮助的人:1.6万
展开全部
  1. float为单精度浮点类型,占4个字节,能表示的数范围小;double为双精度浮点类型,占8个字节,能表示的数范围大。

  2. 对于赋值来说,因为声明浮点数时默认为double类型,所以float需要在数的的后面添加f/F;

    例:

    float a=1.2   //错误

    float a=1.2f  //正确

    float a=1.2F  //正确

    double b=1.2  //正确

    double b=1.2d  //正确

    double b=1.2D   //正确

跟我一起学编程
2019-12-28 · 学编程,做程序猿,我是认真的,一起来吧!
跟我一起学编程
采纳数:802 获赞数:2153

向TA提问 私信TA
展开全部
两者都能表示小数,但是精度是不一样的,float是单精度,而double是双精度的,在取舍的时候会造成小数不一样。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
高树是数
2019-10-18 · 超过63用户采纳过TA的回答
知道小有建树答主
回答量:182
采纳率:75%
帮助的人:17.4万
展开全部
float 占4个字节 精度是6位有效数字 取值范围是10的-38次方到10的38次方
double 占8个字节 精度是15位有效数字 取值范围是10的-308次方到10的308次方

赋值时float型变量强制后面用f结尾,float a=6.0f;
注意float是6位有效数字,第7位数字将会产生四舍五入
所以如果一个float变量 这样定义: float a=6.12345675; 则第7位将产生四舍五入(5及5以下的都将舍去)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6798784ff6
2019-10-18 · 超过10用户采纳过TA的回答
知道答主
回答量:68
采纳率:50%
帮助的人:10.9万
展开全部
  1. 存储范围不一样,一个4字节一个8字节

  2. 精度不一样,大概可以这样理解,同样表示圆周率一个3位小数一个10位小数的样子

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式