Суммирование чисел в строке

Есть строка "Вася заработал 5000 рублей, Петя - 7563 рубля, а Маша - 30000 рублей". Надо суммировать все числа в ней. Нужно получить в консоль 42563. Нельзя использовать регулярные выражения, а только методы indexOf(), lastIndexOf(), substring(). У меня выводит 5000 7563 30000 Код ниже

public class Primer {

    public static void main(String[] args) {
        String text = "Вася заработал 5000 рублей, Петя - 7563 рубля, а Маша - 30000 рублей";
        System.out.println(getSalary(text));
    }

    public static String getSalary(String salary){
        String vasyaStr = "заработал";
        int vasyaStart = salary.indexOf(vasyaStr);
        int vasyaEnd = salary.indexOf("рублей", vasyaStart);
        String petyaStr = "-";
        int petyaStart = salary.indexOf(petyaStr);
        int petyaEnd = salary.indexOf("рубля", petyaStart);
        String mashaStr = "Маша - ";
        int mashaStart = salary.indexOf(mashaStr);
        int mashaEnd = salary.indexOf("рублей", mashaStart);
        String vasyaSalary = salary.substring(vasyaStart + vasyaStr.length(), vasyaEnd);
        String petyaSalary = salary.substring(petyaStart + petyaStr.length(), petyaEnd);
        String mashaSalary = salary.substring(mashaStart + mashaStr.length(), mashaEnd);
        return vasyaSalary + petyaSalary + mashaSalary;
        }
    }

Ответы (1 шт):

Автор решения: Sergey Zh.

Скорее всего после слова RamType нужно просто поставить точку и выбрать соответствующий Enum тип этого RamType (у вас сейчас не выбран). И всё должно работать.

Ну а вообще, скиньте, пожалуйста, детальную информацию. Потому что этот ответ на уровне предположения. Нужен код класса Ram и enum RamType. А также информация какие именно ошибки возникают. Тогда можно будет точно сказать в чём проблема и как её исправить.

→ Ссылка