多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Java 程序:`double`到字符串的转换 > 原文: [https://beginnersbook.com/2015/05/java-double-to-string/](https://beginnersbook.com/2015/05/java-double-to-string/) 在 [java 教程](https://beginnersbook.com/java-tutorial-for-beginners-with-examples/)中,我们将学习如何**在 Java** 中将`double`转换为字符串。我们可以通过多种方式进行此转换 - 1. 使用`String.valueOf(double)`方法将`double`转换为字符串。 2. 使用[`Double`包装类](https://beginnersbook.com/2017/09/wrapper-class-in-java/)的`toString()`方法在 Java 中将`double`转换为字符串。 3. 使用`String.format()`方法将`double`转换为字符串 4. 使用`DecimalFormat.format()`将`double`转换为字符串 5. 使用[`StringBuffer`和`StringBuilder`转换为字符串](https://beginnersbook.com/2014/08/stringbuilder-vs-stringbuffer/)。 ## 1\. 使用`String.valueOf(double)`方法将`double`转换为字符串 `public static String valueOf(double d)`:我们可以通过调用`String`类的`valueOf()`方法将`double`原始类型转换为[`String`](https://beginnersbook.com/2013/12/java-strings/)。此方法返回`double`参数的字符串表示形式。 ```java public class JavaExample{ public static void main(String args[]){ //double value double dnum = 99.9999; //convert double to string using valueOf() method String str = String.valueOf(dnum); //displaying output string after conversion System.out.println("My String is: "+str); } } ``` 输出: ![Java Convert double to String](https://beginnersbook.com/wp-content/uploads/2015/05/double_to_string.jpg) ## 2\. 使用`Double`包装类的`toString()`方法将`double`转换为字符串 `public String toString( )`:这是另一种可用于**将`double`转换为`String`**的方法。此方法返回`Double`对象的字符串表示形式。此对象表示的原始`double`值将转换为字符串。 ```java public class JavaExample{ public static void main(String args[]){ double dnum = -105.556; //double to string conversion using toString() String str = Double.toString(dnum); System.out.println("My String is: "+str); } } ``` 输出: ![double to string in Java using Double.toString()](https://beginnersbook.com/wp-content/uploads/2015/05/java_double_string.jpg) ## 3\. 使用`String.format()`方法将`double`转换为字符串 `String.format()`方法可用于双字符串转换。 ```java public class JavaExample{ public static void main(String args[]){ double dnum = -99.999; String str = String.format("%f", dnum); System.out.println("My String is: "+str); } } ``` 输出: ![Java Convert double to string using String.format()](https://beginnersbook.com/wp-content/uploads/2015/05/double_to_string_using_stringformat.jpg) 我们可以使用这种方法调整字符串中的小数位数。例如:如果我们在字符串中只需要小数点后两位数,那么我们可以像这样更改代码: ```java double dnum = -99.999; String str = String.format("%.2f", dnum); ``` 此代码的输出将是:`My String is: -100.00` 这是因为这个方法的`double`值。 ## 4\. 使用`DecimalFormat.format()`将`double`转换为字符串 与`String.format()`方法类似。要使用它,我们必须在我们的代码中导入包:`java.text.DecimalFormat`。 ```java import java.text.DecimalFormat; public class JavaExample{ public static void main(String args[]){ double dnum = -99.999; /* creating instance of DecimalFormat * #.000 is to have 3 digits after decimal point * in our output string */ DecimalFormat df = new DecimalFormat("#.000"); //conversion String str = df.format(dnum); //displaying output System.out.println("My String is: "+str); } } ``` 输出: ![Convert double to string in java using DecimalFormat](https://beginnersbook.com/wp-content/uploads/2015/05/decimalformat_double_to_string.jpg) ## 5\. 使用`StringBuffer`和`StringBuilder`将`double`转换为字符串 我们也可以使用`StringBuffer`和`StringBuilder`将`double`转换为`String`。两者的转换步骤相同。步骤如下 - 1. 创建`StringBuffer`/`StringBuilder`实例 2. 追加`double`值 3. 将`StringBuffer`/`StringBuilder`转换为`String` `double -> StringBuffer -> String` ```java public class JavaExample{ public static void main(String args[]){ //double value double dnum = 89.891; //creating instance of StringBuffer StringBuffer sb = new StringBuffer(); //appending the double value to StringBuffer instance sb.append(dnum); //converting StringBuffer to String String str = sb.toString(); System.out.println("My String is: "+str); } } ``` 输出: ```java My String is: 89.891 ``` **double - > StringBuilder - > String** ```java public class JavaExample{ public static void main(String args[]){ //double value double dnum = -66.89; //creating instance of StringBuilder StringBuilder sb = new StringBuilder(); //appending the double value to StringBuilder instance sb.append(dnum); //converting StringBuilder to String String str = sb.toString(); System.out.println("My String is: "+str); } } ``` 输出: ![Java Convert double to String using StringBuffer and StringBuilder](https://beginnersbook.com/wp-content/uploads/2015/05/double_to_string_stringbuilder_stringbuffer.jpg)