Java函数:将字符串中的数字求和
发布时间:2023-08-12 15:53:08
在Java中,可以使用如下的函数来将字符串中的数字求和:
public static int sumOfNumbersInString(String str) {
int sum = 0;
int currentNumber = 0;
boolean isNumber = false;
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (Character.isDigit(c)) {
currentNumber = currentNumber * 10 + Character.getNumericValue(c);
isNumber = true;
} else {
if (isNumber) {
sum += currentNumber;
currentNumber = 0;
isNumber = false;
}
}
}
if (isNumber) {
sum += currentNumber;
}
return sum;
}
这个函数接受一个字符串作为参数,并返回字符串中的所有数字的和。它使用一个循环遍历字符串的每个字符,并根据字符是否是数字来判断是否需要更新当前数字的值。当遇到非数字字符时,如果之前的字符是数字,则将当前数字的值添加到总和中,然后将当前数字重新置为0,为下一个数字做准备。最后,如果在字符串的末尾还有一个数字,需要将它添加到总和中。
以下是一个示例演示如何使用这个函数:
public static void main(String[] args) {
String str = "abc123def45ghi6";
int sum = sumOfNumbersInString(str);
System.out.println("Sum of numbers in the string: " + sum);
}
输出结果为:
Sum of numbers in the string: 174
这表明,在字符串"abc123def45ghi6"中,数字123、45和6的和为174。
