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