Поиск чисел в строке и их сумма

182
21 сентября 2017, 14:06

Вообщем, существуют некие строки которые нужно проверить на наличие в них цифр, с этим все в порядке, но при выводе суммы этих чисел возникает ошибка

class Ideone {
  public static void main(String[] args) throws java.lang.Exception {
    Scanner scanner = new Scanner(System.in);
    System.out.println("Введите первую строку: ");
    String str = scanner.next();
    System.out.println("Введите вторую строку: ");
    String str1 = scanner.next();
    System.out.println("Введите третью строку: ");
    String str2 = scanner.next();
    if (!str.matches("^\\D*$")) {
        System.out.println("STR cодержит цифры!");
    } else {
        System.out.println("STR не содержит цифр!");
    }

    if (!str1.matches("^\\D*$")) {
        System.out.println("STR1 cодержит цифры!");
    } else {
        System.out.println("STR1 не содержит цифр!");
    }

    int count = 0, sum = 0;
    for (int i = 0; i < str2.length(); i++) {
        if (Character.isDigit(str2.charAt(i))) {
            count++;
            sum += count;///////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        }
    }
    if ((count >= 1) && (sum >= 1)) {
        System.out.println("STR2 содержит " + count + " цифр и их сумма = " + sum);
    } else {
        System.out.println("STR2 не содержит цифр, невозможно вычислить сумму!");
    }
  }
}
Answer 1

Вы суммируете не числа, но счётчик их количества. Т.е. цикл подсчёта суммы должен быть таков:

int count = 0, sum=0;
for (int i = 0; i < str2.length(); i++) {
    if (Character.isDigit(str2.charAt(i))) {
        count++;
        sum += Integer.parseInt(String.valueof(str2.charAt(i)));
    }
}
READ ALSO
Кастование числа к строке не кидает ClassCastExeption при использовании дженериков - почему?

Кастование числа к строке не кидает ClassCastExeption при использовании дженериков - почему?

От примера ниже взрывается ^_^ головаОбъясните, пожалуйста, хоть на пальцах, почему в строчке //(?!) не выбрасывается исключение ClassCastExeption??? Там...

169
вывод целых чисел как аргументы [требует правки]

вывод целых чисел как аргументы [требует правки]

Как ввести целые числа как аргументы командной строки, подсчитать их сум- мы (произведения) и вывести результат на консоль ? если можно напишите...

920
В чем преимущества и недостатки div, anchor и button?

В чем преимущества и недостатки div, anchor и button?

кто что использует для отображения кнопок на странице (без тэга form)

170
Ошибка гугл net::ERR_ABORTED

Ошибка гугл net::ERR_ABORTED

ЧТО это за ошибка??? Из-за нее не работает font awesome

1596