我想找到字符串中整数的总和。例如:
String myString= "The price is 345and the tax1 is 12sales";
String output = "The price is 12and the tax1 is 3sales";
我发现很少有方法无法按照我需要的方式显示最终输出。
int sum = 0;
for (int I =0; i < myString.lengh(); i++)
{
char c = myString.charAt(i);
if(Character.isDigit(c))
{
int value = Integer.parseInt(String.valueOf(c));
}
}
我得到的总和是,但我希望能够在字符串后附加各个和。 输出=“价格为12,税收1为3”
答案 0 :(得分:1)
我正在使用StringBuilder构建结果字符串。只要遇到数字,就必须继续添加数字。遇到字符时,必须附加手头的总和(如果有),然后附加字符。
注意:如果总和可以为0(并且需要进行调整以支持该值),则此方法将无效。
int sum = 0;
StringBuilder builder = new StringBuilder();
for (int i = 0; i < myString.length(); i++)
{
char c = myString.charAt(i);
if(Character.isDigit(c))
{
sum += Integer.parseInt(String.valueOf(c));
} else {
if (sum != 0) {
builder.append(sum);
}
builder.append(c);
sum = 0; //reset
}
}
答案 1 :(得分:0)
添加一条if语句,检查下一个字符是否为数字,如果是数字,则添加它,否则就可以完成并打印出来。 但是,您的输入是非常不寻常的,您确定无法改善输入本身吗?