首页 > 解决方案 > 我如何在 Java 中将字符串 '$1400.00' 转换为 int 1400.00

问题描述

任何人都可以帮我将带有数字和字符的字符串转换为Java中的整数吗?

例如,我想将 String amount = $100.00 转换为 int。

我尝试使用 aninteger.parseInt();但它给出了错误。

String Checkamount = $1400.00; //Convert web element to string.
int intAmount = Integer.parseInt(Checkamount);

预期结果:1400.00

错误信息

线程“主”java.lang.NumberFormatException 中的异常:对于输入字符串:java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68) 处的“$1,400.00”

标签: java

解决方案


首先,1400.00不能转换为,int因为它有小数位。您需要使用变量类型doublefloat存储此值。

replace()在转换为数字之前,使用 Java替换掉不需要的字符。前任。

amount = amount.replace('$', '').replace(',', '');
double doubleAmount = Double.parseDouble(amount);

有一种更简洁的方法可以使用适当的正则表达式进行替换,但这应该可以。


推荐阅读