2 momo1199 Momo1199 于 2012.09.14 10:14 提问

Android怎么把字符串转换成Integer/Float/Double 中的一种

我想把字符串转换为Integer/Float/Double 中的一种,但是结果变成了NumberFormatException.。我的字符串是:37,78584,怎么样把他们转变为我想要的类型呢?
先谢谢帮我解答。

6个回答

loFataMer
loFataMer   2012.09.14 13:21
已采纳

设置正确的locale

String s= "37,78584";
Number number= NumberFormat.getNumberInstance(Locale.FRENCH).parse(s);
double d= number.doubleValue();
System.out.println(d);

输出:

37.78584
mansuifengqi
mansuifengqi   2012.09.14 10:41

将字符串转化为整型;

int i = Integer.parseIn(String str);

int i = Integer.valueOf().intValue();

注:Integer.parseIn 和 Integer.valueOf 不同,前者生成的是整型,而后者是一个对象,所以要通过intValue()来获得对象的值;

ce_la_vie
ce_la_vie   2012.09.14 13:55

使用""代替字符串里的

String str= "37,78584";str= str.replaceAll("\\,","");
Momo1199
Momo1199 还是设置locale好一些。
大约 5 年之前 回复
suannai0314
suannai0314   2012.09.14 11:39

用""代替逗号(",")

  String s ="37,78584";
  int ival = Integer.parseInt(s.replace("," ,""));
  double dval=Double.parseDouble(s.replace("," ,""));
  float fval =Float.parseFloat(s.replace("," ,""));
qazwsx132656526
qazwsx132656526   2015.08.31 20:05

将字符串转化为整型;

int i = Integer.parseIn(String str);

int i = Integer.valueOf().intValue();

qq_27578023
qq_27578023   2016.05.28 21:46

Integer.parseInt("123");

Double.parseDouble("123");

Foloat.parseFloat();

Csdn user default icon
上传中...
上传图片
插入图片