欢迎访问宙启技术站
智能推送

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。