我必須將字符串轉換成浮動我做它像這裏面:如何將字符串轉換成浮動環
float[] iLongs = new float[mLongs.length];
for(int i = 0; i < iLongs.length ; i++){
iLongs[i] = Float.valueOf(mLongs[i]).floatValue();
}
但它引發的NumberFormat異常
但是,如果使用相同的功能在任何循環之外工作。 怎麼辦?
我必須將字符串轉換成浮動我做它像這裏面:如何將字符串轉換成浮動環
float[] iLongs = new float[mLongs.length];
for(int i = 0; i < iLongs.length ; i++){
iLongs[i] = Float.valueOf(mLongs[i]).floatValue();
}
但它引發的NumberFormat異常
但是,如果使用相同的功能在任何循環之外工作。 怎麼辦?
該代碼看起來很好,這讓我懷疑它是一個數據問題。您需要驗證每個用於mLong的索引都包含一個實際上作爲浮點數有效的字符串,您如何實現這一點取決於您。
你的代碼沒有問題。 發生異常是因爲String不是Float而不能被解析。最常見的錯誤 - 而不是。
你是正確的語法。我認爲問題在於液體。它可能包含一些字母字符。
替代代碼:
class StringToFloat {
public static void main (String[] args) {
// String s = "hello"; // 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 e) {
System.out.println("NumberFormatException: " + e.getMessage());
}
}
}
// Output :float f = 100.0
你爲什麼不使用['Float.parseFloat()'](http://download.oracle.com/javase/6/docs/api/java /lang/Float.html#parseFloat%28java.lang.String%29)?什麼是導致NumberFormatException的字符串? – 2011-05-20 12:30:45
這與循環無關,與'mLongs'中的字符串值有關。 – 2011-05-20 12:30:55
我想你把'String Array'轉換成'Float Array' – 2011-05-20 12:34:49