java:将float转换为String和String来浮动

我怎么能从浮动转换为string或string浮动?

在我的情况下,我需要作出2个值之间的断言(我从表中获得的值)和我计算的浮点值之间的断言。

String valueFromTable = "25"; Float valueCalculated =25.0; 

我尝试从浮动到string:

 String sSelectivityRate = String.valueOf(valueCalculated ); 

但断言失败

使用Java的Float类。

 float f = Float.parseFloat("25"); String s = Float.toString(25.0f); 

要比较它总是更好地将string转换为浮动和比较为两个浮动。 这是因为对于一个浮点数有多个string表示,当与string进行比较时(例如“25”!=“25.0”!=“25.00”等)

浮动到string – String.valueOf()

 float amount=100.00f; String strAmount=String.valueOf(amount); // or Float.toString(float) 

string浮动 – Float.parseFloat()

 String strAmount="100.20"; float amount=Float.parseFloat(strAmount) // or Float.valueOf(string) 

你可以试试这个代码示例:

 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()); } } } 

在这里find

我相信下面的代码将有所帮助:

 float f1 = 1.23f; String f1Str = Float.toString(f1); float f2 = Float.parseFloat(f1Str); 

这是一个可能的答案,这也将给出精确的数据,只需要更改所需格式的小数点。

公共类TestStandAlone {

     / **
      * 

这个方法是主要的

* @参数参数无效 * / public static void main(String [] args){ // TODO自动生成的方法存根 尝试{ 浮点数f1 = 152.32f; BigDecimal roundfinalPrice = new BigDecimal(f1.floatValue())。setScale(2,BigDecimal.ROUND_HALF_UP); System.out.println(“f1 - >”+ f1); String s1 = roundfinalPrice.toPlainString(); System.out.println(“s1”+ s1); catch(Exception e){ // TODO自动生成的catch块 e.printStackTrace(); } } }

输出将是

 f1→152.32
 s1 152.32

以及这种方法不是一个好的,但容易,不build议。 也许我应该说这是最不有效的方法和更差的编码实践,但使用起来很有趣,

 float val=10.0; String str=val+""; 

在空引号中,向variablesstr添加一个空string,向stringtypes上传“val”。