浮点类型及使用细节
单精度float
双精度double
浮点数再机器中存放形式简单说明,浮点数 = 符号位 + 指数位 + 尾数位
尾数部分可能丢失,造成精度损失
1、java浮点类型有固定的范围和字段长度,不受具体os影响
2、java浮点型常量默认为double型,声明float型常量,须后加“f”或“F”
3、浮点型常量有两种表示形式 十进制数形式:如5.12 512.0f .512(必须有小数点) 科学计数法形式:5.12e2(5.12*10的2次方 5.12e-2(5.12/10的2次方)
4、通常情况下,应该使用double类型,因为它比float更精确 如 double num1 = 2.1234567851; float num2 = 2.1234567851F;
5、浮点数使用陷阱 2.7 和 8.1 / 3比较
double num1 = 2.7 ;
double num2 = 8.1 / 3 ;
当我们对运算结果是小数的,进行相等判断是,要小心,应该是以两个数的差值的绝对值,在某个精度范围内判断
Math.abs(num1 - num2) if(Math.abs(num1 - num2) < 0.00000001)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程