💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
>[success] # Double * **Double 作为 double** 的包装类,java.lang.Double类型内部包装了一个double类型的变量作为成员变量,主要用于实现对double类型的包装并提供double类型到String类之间的转换等方法 >[danger] ##### 常用的常量 | 常量类型和名称 |功能介绍| | --| --| |public static final int SIZE |表示double类型的二进制位数| |public static final int BYTES |表示double类型的字节个数| |public static final Class TYPE| 表示double类型的Class实例| ~~~ public class JavaTest { public static void main(String[] args) { System.out.println(Double.SIZE); // 64 System.out.println(Double.BYTES); // 8 System.out.println(Double.TYPE); // double } } ~~~ >[danger] ##### 常用方法 |方法声明| 功能介绍| | --| --| |Double(double value) |根据参数指定的浮点数据来构造对象(已过时)| |Double(String s) |根据参数指定的字符串来构造对象 (已过时)| |double doubleValue() |获取调用对象中的浮点数据并返回| |static Double valueOf(double d) |根据参数指定浮点数据得到Double类型对象| |boolean equals(Object obj)| 比较调用对象与参数指定的对象是否相等| |String toString() |返回描述调用对象数值的字符串形式| |static double parseDouble(String s) |将字符串类型转换为double类型并返回| |boolean isNaN()| 判断调用对象的数值是否为非数字| * **说明**通过**构造函数**方式创建 一个double包装类已经过时,更多推荐使用**valueOf**创建 ![](https://img.kancloud.cn/ad/bb/adbb6aa155fa3bd1598ceafea49a7a37_551x181.png) * 案例 ~~~ public class JavaTest { public static void main(String[] args) { // 1.在Java5之前装箱和拆箱的实现 // 实现了从double类型到Double类型的转换,装箱 Double db1 = Double.valueOf(3.14); System.out.println("db1 = " + db1); // 3.14 // 实现了从Double类型到double类型的转换,拆箱 double d1 = db1.doubleValue(); System.out.println("d1 = " + d1); // 3.14 System.out.println("---------------------------------------------"); // 2.从Java5开始实现自动装箱和自动拆箱 Double db2 = 3.14; double d2 = db2; System.out.println("---------------------------------------------"); // 3.实现静态方法和成员方法的调用 double d3 = Double.parseDouble("13.14"); System.out.println("d3 = " + d3); // 13.14 System.out.println("db2对象的判断结果是:" + db2.isNaN()); // false 不是非数字 Double db3 = Double.valueOf(0 / 0.0); System.out.println("db2对象的判断结果是:" + db3.isNaN()); // true 是非数字 } } ~~~