Java中的double数据类型存储双精度64位IEEE 754浮点数。在Java中,它用作十进制值的默认类型。
像所有其他原始变量一样,double也具有包装原始数据类型的包装器类(Double)。由于Java支持自动装箱,因此原始值和对象可以互换使用。
您可以在Java中以各种不同的方式将double值转换为String-
使用“ +”运算符-+运算符是加法运算符,但是当与Strings一起使用时,它充当串联运算符。它将另一个操作数连接到String并返回String对象。
您可以使用“ +”运算符将双精度值简单地添加到空字符串中,从而将其转换为字符串。实际上,这是将双精度值转换为字符串的简单方法。
import java.util.Scanner; public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); Double d = sc.nextDouble(); String result = ""+d; System.out.println("The result is: "+result); } }
输出结果
输入一个双精度值: 2548.2325 The result is: 2548.2325
使用toString()
Double类的toString()
方法-包装器类Double的方法返回当前Double对象的String格式。
将所需的原始double值读入Double类引用变量(会发生自动装箱),然后使用toString()
方法将其转换为String 。
import java.util.Scanner; public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); Double d = sc.nextDouble(); String result = d.toString(); System.out.println("The result is: "+result); } }
输出结果
输入一个双精度值: 2548.2325 The result is: 2548.2325
或者,您可以直接将double值直接传递给toString()方法-
public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); double d = sc.nextDouble(); String result = Double.toString(d); System.out.println("The result is: "+result); } }
使用valueOf()
String类的valueOf()
方法-String类的方法接受一个char或char数组或double或float或int或long或对象作为参数,并返回其String表示形式。
您可以将所需的double值作为参数传递给此方法,并检索其Sting格式。
import java.util.Scanner; public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); Double d = sc.nextDouble(); String result = "".valueOf(d); System.out.println("The result is: "+result); } }
输出结果
输入一个双精度值: 2548.2325 The result is: 2548.2325
使用format()
String类的方法-此方法接受格式为String和参数(varargs),并以指定格式返回给定变量的String对象。
您可以使用format()
方法将双精度值格式化为字符串。向其传递“%f”作为格式字符串(以及所需的双精度值)。
import java.util.Scanner; public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); double d = sc.nextDouble(); String result = String.format("%f", d); System.out.println("The result is: "+result); } }
输出结果
输入一个双精度值: 2548.2325 The result is: 2548.2325
使用append()
StringBuilder或StringBuffer的方法-StringBuilder或StringBuffer对象的append方法接受布尔值或char或char数组或double或float或int或long或String值作为参数并将其添加到当前对象。
您可以将所需的double值附加到方法上,并从获得的StringBuffer(或StringBuilder)对象中检索String。
import java.util.Scanner; public class ConversionOfDouble { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("输入一个双精度值:"); double d = sc.nextDouble(); StringBuffer sb = new StringBuffer(); sb.append(d); String result = sb.toString(); System.out.println("The result is: "+result); } }
输出结果
输入一个双精度值: 2548.2325 The result is: 2548.2325