温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java Double 双精度如何判断是否为空

发布时间:2026-07-25 02:49:48 来源:亿速云 阅读:103 作者:小樊 栏目:编程语言

在 Java 里,double(基本类型)不能为 null,只要你讨论的是空(null),一定是 Double(包装类型)。两者要分清楚。


一、double(基本类型)

double d;
  • 没有“空”的概念
  • 一定有值,默认值是 0.0
  • 不能用 == null 判断(编译不过)

结论

基本类型 double 不存在“是否为空”的判断


二、Double(包装类型)

Double d = null;

✅ 正确判断是否为空的方法

✅ 方法 1:直接判断 null

Double d = ...;

if (d == null) {
    System.out.println("为空");
}

✅ 方法 2:结合防止 NPE(自动拆箱场景)

如果你要判断 不是空,并且有值

if (d != null) {
    double value = d; // 自动拆箱
}

⚠️ 错误示例(会抛 NullPointerException

Double d = null;
if (d > 0) {   // ❌
}

✅ 正确写法:

if (d != null && d > 0) {
}

三、常见误区

❌ 用 0.0 判断“空”

if (d == 0.0) { // 错误用法
}

❗ 问题:

  • 0.0 是合法数值
  • 无法区分“没赋值”和“真的是 0”

四、什么时候用 Double,什么时候用 double

场景 推荐
数据库字段允许 NULL Double
JSON 反序列化 Double
数值计算 double
频繁运算、无空值 double

五、总结一句话 ✅

Java 中:

  • double:不能为 null
  • Double:可以用 == null 判断
  • 判断“是否等于 0” ≠ 判断“是否为空”

如果你有 数据库 / JSON / 前端传值 的具体场景,我可以直接给你最合适的写法。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI