Java double转字符串有多种方法,下面分别介绍这几种方法的转换。
1. String.valueOf(double)
我们可以通过调用String类的valueOf()
方法将double类型转换为String。此方法返回double类型的字符串表示形式。
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
//使用valueOf()方法转换
String str = String.valueOf(dnum);
//输出
System.out.println("转换后的字符串为: "+str);
}
}
输出:转换后的字符串为: 3.1415926
2. Double.toString(dnum)
Double.toString(dnum)
方法,这个和上面的转换方法类似,下面是例子。
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
//使用Double.toString(dnum)方法转换
String str = Double.toString(dnum);
//输出
System.out.println("转换后的字符串为: "+str);
}
}
输出:转换后的字符串为: 3.1415926
3. String.format("%f", dnum)
使用字符串格式化的方法转换。
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
//方法转换
String str = String.format("%f", dnum);
//输出
System.out.println("转换后的字符串为: "+str);
}
}
输出:转换后的字符串为: 3.141593
我们可以使用这种方法调整小数点的位数,比如下面保留2位小数。
String str = String.format("%.2f", dnum);
输出结果也变为3.14。
4. DecimalFormat.format()
它和String.format()
格式化方法类似。我们在程序中导入java.text.DecimalFormat包即可。
import java.text.DecimalFormat;
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
DecimalFormat df = new DecimalFormat("#.000");//保留3位小数
//转换
String str = df.format(dnum);
//输出
System.out.println("转换后的字符串为: "+str);
}
}
输出:转换后的字符串为: 3.142
5. StringBuffer 和 StringBuilder
我们也可以使用StringBuffer和StringBuilder将double转换为字符串。两者的转换步骤相同。步骤如下:1.创建StringBuffer或者StringBuilder实例
2.使用append()方法
3.将StringBuffer或者StringBuilder转换为字符串
1)StringBuffer方法double转字符串
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
StringBuffer sb = new StringBuffer();
sb.append(dnum);
String str = sb.toString();
//输出
System.out.println("转换后的字符串为: "+str);
}
}
2)StringBuilder方法double转字符串
public class Double2StringExample {
public static void main(String[] args) {
double dnum = 3.1415926;
StringBuilder sb = new StringBuilder();
sb.append(dnum);
String str = sb.toString();
//输出
System.out.println("转换后的字符串为: "+str);
}
}
它们的输出结果一样:转换后的字符串为: 3.1415926