将字符串转换为Double-Java
将带逗号的字符串数字(例如:835,111.2)转换为Double实例的最简单,正确的方法是什么。
谢谢。
回答:
看一看java.text.NumberFormat
。例如:
import java.text.*;import java.util.*;
public class Test
{
// Just for the sake of a simple test program!
public static void main(String[] args) throws Exception
{
NumberFormat format = NumberFormat.getInstance(Locale.US);
Number number = format.parse("835,111.2");
System.out.println(number); // or use number.doubleValue()
}
}
根据您使用的数量类型,您可能想解析为一个BigDecimal
。最简单的方法可能是:
BigDecimal value = new BigDecimal(str.replace(",", ""));
或DecimalFormat
与一起使用setParseBigDecimal(true)
:
DecimalFormat format = (DecimalFormat) NumberFormat.getInstance(Locale.US);format.setParseBigDecimal(true);
BigDecimal number = (BigDecimal) format.parse("835,111.2");
以上是 将字符串转换为Double-Java 的全部内容, 来源链接: utcz.com/qa/422320.html