如何在 Java 中将浮点数更改为字符串?
How to change a float into a String in Java?
是否可以将浮点值更改为字符串?如果可能,是否也可以将其转换为字符串,同时将数字四舍五入为最接近的整数?
例如,如果我有一个浮点数,例如 2.335,那么我可以将其更改为值“2.335”或“2”的字符串(通过四舍五入)吗?
使用javaFloat
class:
String s = Float.toString(25.0f);
如果要向下舍入一个数字,只需使用 Math.floor()
函数即可。
float f = 2.9999f;
String s = Float.toString(Math.floor(f));//rounds the number to 2 and converts to String
第一行将数字向下舍入为最接近的整数,第二行将其转换为字符串。
另一种方法是使用 String.valueOf(floatNumber);
float amount=100.00f;
String strAmount=String.valueOf(amount);
要做到这一点,你可以简单地做
float example = 2.335
String s = String.valueOf(Math.round(example));
将浮点数转换为字符串:
String s = Float.toString(2.335f);
舍入可以通过
完成
String.format("%.5g%n", 0.912385);
其中 returns 0.91239
有关更详细的答案,请参阅 Round a number in Java
您的第一个要求可以用 String.valueOf
来满足
float f = 1.6f;
String str = String.valueOf(f);
对于四舍五入,您可以使用 Math.round
而不是 Math.floor
。因为 Math.floor
会将 1.6 转换为 1.0 而不是 2.0,而 Math.round
会将您的数字四舍五入为最接近的整数。
是否可以将浮点值更改为字符串?如果可能,是否也可以将其转换为字符串,同时将数字四舍五入为最接近的整数?
例如,如果我有一个浮点数,例如 2.335,那么我可以将其更改为值“2.335”或“2”的字符串(通过四舍五入)吗?
使用javaFloat
class:
String s = Float.toString(25.0f);
如果要向下舍入一个数字,只需使用 Math.floor()
函数即可。
float f = 2.9999f;
String s = Float.toString(Math.floor(f));//rounds the number to 2 and converts to String
第一行将数字向下舍入为最接近的整数,第二行将其转换为字符串。
另一种方法是使用 String.valueOf(floatNumber);
float amount=100.00f;
String strAmount=String.valueOf(amount);
要做到这一点,你可以简单地做
float example = 2.335
String s = String.valueOf(Math.round(example));
将浮点数转换为字符串:
String s = Float.toString(2.335f);
舍入可以通过
完成String.format("%.5g%n", 0.912385);
其中 returns 0.91239
有关更详细的答案,请参阅 Round a number in Java
您的第一个要求可以用 String.valueOf
float f = 1.6f;
String str = String.valueOf(f);
对于四舍五入,您可以使用 Math.round
而不是 Math.floor
。因为 Math.floor
会将 1.6 转换为 1.0 而不是 2.0,而 Math.round
会将您的数字四舍五入为最接近的整数。