温馨提示×

温馨提示×

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

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

java Double双精度怎么用

发布时间:2026-09-15 04:47:16 来源:亿速云 阅读:83 作者:小樊 栏目:编程语言

在 Java 里,Doubledouble 的包装类(引用类型),用来表示 64 位双精度浮点数。下面从 基本用法、常见场景、注意事项 三部分说明。


一、基本用法

1. 声明与赋值

double a = 3.14;          // 基本类型
Double b = 3.14;          // 包装类型(自动装箱)
Double c = Double.valueOf(3.14);

2. 自动装箱 / 拆箱

Double d = 2.5;   // 自动装箱
double e = d;     // 自动拆箱

二、常用方法(很实用)

1. 字符串转 Double

Double d = Double.parseDouble("3.14");
Double d2 = Double.valueOf("3.14");

2. 转字符串

String s = d.toString();

3. 常用常量

Double.MAX_VALUE;   // 最大值
Double.MIN_VALUE;   // 最小正值
Double.POSITIVE_INFINITY; // 正无穷
Double.NEGATIVE_INFINITY; // 负无穷
Double.NaN;         // 非数字

4. 判断是否为有效数字

Double.isNaN(d);
Double.isInfinite(d);

三、典型使用场景

1. 集合中必须使用 Double

List<Double> list = new ArrayList<>();
list.add(1.1);
list.add(2.2);

⚠️ List<double> 是不允许的,只能用 Double


2. 计算(注意精度问题)

double x = 0.1 + 0.2;
System.out.println(x); // 0.30000000000000004

⚠️ 浮点数不精确,金钱计算不要用 Double

✅ 正确做法:

BigDecimal money = new BigDecimal("0.1")
                    .add(new BigDecimal("0.2"));

3. 比较大小

Double a = 1.1;
Double b = 2.2;

a.compareTo(b); // -1, 0, 1

⚠️ 不要用 == 比较 Double 值:

Double x = 0.1 + 0.2;
Double y = 0.3;
System.out.println(x == y); // false

四、和 double 的区别总结

对比项 double Double
类型 基本类型 包装类
能否为 null
能否放集合
性能 略低

五、简单示例

public class Test {
    public static void main(String[] args) {
        Double a = 1.5;
        Double b = 2.5;
        Double sum = a + b;
        System.out.println(sum);
    }
}

如果你有 具体场景(比如:计算、JSON、数据库、算法、精度问题),可以告诉我,我可以给你更针对性的示例。

向AI问一下细节

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

AI