从字符串创建浮点数
Posted
技术标签:
【中文标题】从字符串创建浮点数【英文标题】:Create float from String 【发布时间】:2014-06-12 06:00:47 【问题描述】:我有一个正则表达式\d+(?:[.,]\d+
,它匹配带有点或逗号的十进制字符串,例如123.123
或123,123
,因此该值是有效的。
现在我的问题是从 123.123
或 123,123
的字符串中生成一个浮点值
【问题讨论】:
Float#parseFloat()
。不知道它是否适用于逗号...
我建议你不要使用Float
或float
,如果可以避免的话,尝试使用double
【参考方案1】:
你可以使用下面的代码。
String val = "123.123 ";
float f = Float.parseFloat(val);
String val = "123,123 "; // if other char(like comma) come, you can also write a regex to replace those set of char
val = val.replace(",",".");// assuming comma is used for decimals
float f = Float.parseFloat(val);
【讨论】:
嗯,想知道这里的逗号是用于千位分隔符还是小数位... 我几乎可以肯定它用于小数。以上是关于从字符串创建浮点数的主要内容,如果未能解决你的问题,请参考以下文章
如何在python中将23位浮点数从字符串转换为浮点数并返回?