double用于表示双精度浮点数,精度约15~16位,声明用double关键字,字面量默认为double类型;因二进制表示限制,0.1+0.2≠0.3,比较应使用误差范围判断。

Java 中的 double 用来表示带小数点的十进制数字,精度约15~16位有效数字,适合科学计算、金额(非高精度场景)、测量值等。
声明和初始化 double 变量
用 double 关键字声明,字面量默认是 double 类型,可加后缀 d 或 D(可选):
- double price = 19.99;
- double pi = 3.141592653589793;
- double bigNum = 1.23e5; // 等价于 123000.0
- double zero = 0.0; // 注意:0.0 是 double,0 是 int
注意浮点数精度问题
double 是二进制浮点数,无法精确表示很多十进制小数(如 0.1),导致计算误差:
- 0.1 + 0.2 == 0.3 的结果是 false(实际值约为 0.30000000000000004)
- 比较时避免直接用 ==,改用误差范围判断:Math.abs(a - b)
- 涉及金钱运算请用 BigDecimal,不用 double
类型转换与运算规则
和其他数值类型混合运算时,Java 自动提升为更宽类型(int → long → float → double):
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~