java:将float转换为String,将String转换为float

lol*_*ola 206 java string types type-conversion number-formatting

我如何从float转换为string或string转换为float?

在我的情况下,我需要在2个值字符串(我从表中获得的值)和我计算的浮点值之间进行断言.

String valueFromTable = "25";
Float valueCalculated =25.0;
Run Code Online (Sandbox Code Playgroud)

我尝试从float到string:

String sSelectivityRate = String.valueOf(valueCalculated );
Run Code Online (Sandbox Code Playgroud)

但断言失败了

Pet*_*nov 371

使用Java的Float类.

float f = Float.parseFloat("25");
String s = Float.toString(25.0f);
Run Code Online (Sandbox Code Playgroud)

比较它总是更好地将字符串转换为float并比较为两个浮点数.这是因为对于一个浮点数,有多个字符串表示,当作为字符串进行比较时它们是不同的(例如"25"!="25.0"!="25.00"等)


ada*_*ost 32

浮点到字符串 - String.valueOf()

float amount=100.00f;
String strAmount=String.valueOf(amount);
// or  Float.toString(float)
Run Code Online (Sandbox Code Playgroud)

Float的字符串 - Float.parseFloat()

String strAmount="100.20";
float amount=Float.parseFloat(strAmount)
// or  Float.valueOf(string)
Run Code Online (Sandbox Code Playgroud)


JMa*_*Max 5

您可以尝试以下代码示例:

public class StringToFloat
{

  public static void main (String[] args)
  {

    // String s = "fred";    // do this if you want an exception

    String s = "100.00";

    try
    {
      float f = Float.valueOf(s.trim()).floatValue();
      System.out.println("float f = " + f);
    }
    catch (NumberFormatException nfe)
    {
      System.out.println("NumberFormatException: " + nfe.getMessage());
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这里找到