如何将这若干个float保留8位小数以空格间隔重新拼接成一个string
时间: 2024-09-06 17:06:35 浏览: 59
Java保留两位小数的几种写法总结
要将若干个`float`类型的数字保留8位小数以空格间隔重新拼接成一个字符串,你可以使用`String.format`方法或者`DecimalFormat`类来实现。以下是使用`String.format`方法的一种方式:
```java
public class FloatToString {
public static void main(String[] args) {
float[] floats = {1.23456789f, 2.3456789f, 3.456789f}; // 示例浮点数数组
String result = "";
for (float f : floats) {
// 使用String.format来格式化float,保留8位小数,并用空格拼接
result += String.format("%.8f ", f);
}
// 去除最后一个多余的空格
result = result.trim();
System.out.println(result);
}
}
```
在这个例子中,`String.format("%.8f ", f)`用于将每个`float`值格式化为保留8位小数,并在其后添加一个空格。注意,由于循环结束后字符串最后会多一个空格,所以使用`trim()`方法去除它。
另一个方法是使用`DecimalFormat`类,示例如下:
```java
import java.text.DecimalFormat;
public class FloatToString {
public static void main(String[] args) {
float[] floats = {1.23456789f, 2.3456789f, 3.456789f}; // 示例浮点数数组
DecimalFormat df = new DecimalFormat("#.########");
StringBuilder sb = new StringBuilder();
for (float f : floats) {
// 使用DecimalFormat格式化float,并追加到StringBuilder
sb.append(df.format(f)).append(" ");
}
// 去除最后一个多余的空格
String result = sb.toString().trim();
System.out.println(result);
}
}
```
这里`new DecimalFormat("#.########")`创建了一个格式化对象,用于保留8位小数。之后同样需要注意去除最后一个空格。
阅读全文