[英]How do I parse ANY Number type from a String in Java?
如何解析Java中的字符串中的任何數字類型?
我知道像Integer.parseInt(myString)
和Double.parseDouble(myString)
這樣的方法,但我最理想的是像Number.parseNumber(myString)
這樣的方法,它不存在。 我怎樣才能以另一種方式實現這種行為? (我希望解析后的Number能夠根據例如小數位數“精確地”反映字符串)。
例:
“0”=>數字(整數子類內部)
“0.0”=>數字(Double子類內部)
此外,沒有像檢查小數分隔符等丑陋。
Number number = NumberFormat.getInstance().parse(myString);
似乎要做的伎倆......
更好的方法是使用BigDecimal類。
BigDecimal n = new BigDecimal("1.0");
需要值的方法
n.byteValue();
n.intValue();
n.shortValue();
n.longValue();
n.floatValue();
n.doubleValue();
您可能正在尋找BigDecimal 。
請記住,數字可以多種形式表示為字符串。 例如, 1
與1.0000000
數字相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.