2012-01-02 284 views
21

正如標題所述。我不相信有可能做到這一點,但如果它讓我知道。將字符串轉換爲浮點數?

這是我寫的bukkit(我的世界服務器)插件所需要的。我想要一個命令:tnt [power]。哪裏功率是我想要轉換爲浮動返回的字符串。

感謝

+3

閱讀的Java API浮法[這裏](http://docs.oracle.com /javase/1.4.2/docs/api/java/lang/Float.html)你可以從一個字符串構造一個新的float。還有其他方法可以做到這一點。請使用Google。 – ubiquibacon 2012-01-02 20:29:09

回答

75

使用Float.valueOf(String)來進行轉換。

valueOf()parseFloat()之間的差異僅僅是回報。如果您想要Float(對象),請使用前者;如果您需要float,請使用後者。

+1

太棒了非常感謝你 – HcgRandon 2012-01-02 20:31:57

+0

歡迎來到堆棧溢出,請考慮[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)答案,如果你喜歡它。 – 2012-01-02 20:33:01

7

使用Float.parseFloat()

class Test { 
    public static void main(String[] args) { 
     String s = "3.14"; 
     float f = Float.parseFloat(s); 
     System.out.println(f); 
    } 
} 
1
String s = "3.14"; 
float f = Float.parseFloat(s); 
1

試試這個:

String numberStr = "3.5"; 
Float number = null; 
try { 
    number = Float.parseFloat(numberStr); 
} catch (NumberFormatException e) { 
    System.out.println("numberStr is not a number"); 
} 
+0

try/catch非常重要。嘗試使用不良數據來查看會發生什麼情況。 – 2014-04-10 18:42:07

0
public class NumberFormatExceptionExample { 
private static final String str = "123.234"; 
public static void main(String[] args){ 
float i = Float.valueOf(str); //Float.parseFloat(str); 
System.out.println("Value parsed :"+i); 
} 
} 

這應該解決的問題。

任何人都可以提出,我們應該如何處理這個時候串進來35,000.00

0

試試這個:

String yourVal = "20.5"; 
float a = (Float.valueOf(yourVal)).floatValue(); 
System.out.println(a); 
相關問題