Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在android中将字符串转换为浮点值_Java_Android - Fatal编程技术网

Java 如何在android中将字符串转换为浮点值

Java 如何在android中将字符串转换为浮点值,java,android,Java,Android,可能重复: 在应用程序中,我想将编辑框中输入的字符串转换为相应的值,如233243664376347845.89转换为相应的浮点值。但它在某个数字后会像IE10一样返回,例如23324366IE10请帮助我。我的代码是- NumberFormat format = NumberFormat.getInstance(Locale.US); try { number = format.parse(e1.getText().toString()); } catch (ParseExcep

可能重复:

在应用程序中,我想将编辑框中输入的字符串转换为相应的值,如
233243664376347845.89
转换为相应的浮点值。但它在某个数字后会像IE10一样返回,例如
23324366IE10
请帮助我。我的代码是-

NumberFormat format = NumberFormat.getInstance(Locale.US);

try 
{
    number = format.parse(e1.getText().toString());
} catch (ParseException e) 
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}

编辑文本长度大于20位,我还想减去两个编辑文本浮点值…

这将解决您的问题:

String s = e1.getText().toString();
Float f= Float.parseFloat(s);
String str=e1.getText().toString();
number = Float.parseFloat(str);
试试这个

EditText edt = (EditText) findViewById(R.id.edit_float);
float number = Float.valueOf(edt.getText().toString());

如果Float包装器类将字符串转换为Float,则使用valueOf()方法。在本例中,我使用getText()获取EditText的可编辑对象,在该对象上调用toString()方法以从中获取字符串。

使用Float.valueOf(string):对
double
值(它不是
Float
)的解析很好。问题是它没有正确显示。打印编号的代码在哪里?Float f=Float.parseFloat(str);它只工作6位,我们将输入大于6位表示它显示6857841E10@user1235251您可以获得类似E10的任何解决方案。如果出现故障,您将捕获NumberFormatException。