Java中float与 double的区别
float是单精度浮点类型32位,即float占用4个字节的存储空间,精度是8位有效数字,指数段有8bits,指数范围为[-127,127] 。
2^127约等于1.7*10^38。38次方是数量级,舍去1.7。所以取值范围是10^-38到10^38。
提示:n位二进制原码和n位二进制反码:-2^(n-1)-1~+2^(n-1)-1;n位二进制补码:-2^(n-1)~+2^(n-1)-1
double是双精度类型,精度是17位有效数字,double占用8个字节的存储空间,取值范围是10^-308到10^308次方。
当你不声明的时候,默认小数都用double来表示,所以如果要用float的话,则必须在其后加上f。
例如:float a=1.3;则会提示不能将double转化成float这成为窄型转化。如果要用float来修饰的话,则应该使用 float a = 1.3f。
注意float是8位有效数字,第7位数字将会产生四舍五入
所以如果一个float变量这样定义:float a=1.32344435;则第7位将产生四舍五入变成1.3234444(5及5以下的都将舍去)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Blazor Hybrid适配到HarmonyOS系统
· 万字调研——AI生成内容检测
· 解决跨域问题的这6种方案,真香!
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库