我在尝试将$ 16500.00字符串转换为16500整数时遇到问题。
这就是我现在所拥有的,但它失败了:
致命的例外:主要 java.lang.NumberFormatException:无效的int:“[]”
我的代码是:
String depTest = mDepositAmount.getText().toString();
String deptest2 = Arrays.toString(depTest.replace("R", "").replace(",", "").split("."));
int dep = Integer.parseInt(deptest2);
请你帮我把最终结果发送到16500.我知道如何通过使用Integer.parseInt将它转换为int它只是在努力使最终结果在字符串中得到16500
答案 0 :(得分:4)
您的原始字符串是否始终以字符'$'开头,后跟数字格式?
如果有的话试试这个:
String org = "$16500.00";
String numbersOnly = org.substring(1); // "16500.00"
int yourInteger = (int)(Float.parseFloat(numbersOnly));
// if you need String, convert it to String again
String integerString = Integer.toString(yourInteger);
答案 1 :(得分:2)
你可以试试这个
String getValue = "$16500.00";
String removeFirstCharecter = getValue.substring(1); // "16500.00"
String [] getString = removeFirstCharecter.split("\\.");
String firstIntValue = (getString[0]); //16500
String sirstIntValue = (getString[1]); //00
现在,您可以将firstIntValue
字符串转换为整数。
String getRequiredValue = Integer.toString(firstIntValue); //16500
答案 2 :(得分:1)
您可以使用DecimalFormat
import java.text.*;
NumberFormat nf = new DecimalFormat("$0.00");
int value = (int) nf.parse("$16500.00");
答案 3 :(得分:0)
由于 $ 符号可能会发生这种情况,因此,只需针对价格 16500 进行另一个文本视图,对于 $ 符号进行其他操作。然后转换Integer.parseInt(textview.getText()。toString);