Не получается перевести строку в число, что делать?

Не получается перевести строку в число, что делать?

public void zadanie() {
    int num = 0;
    String s = "s: 1, 2, 3";
    String s1 = s.split(":")[1];
    String str = s1.split(",")[0];
    num_sch = Integer.parseInt(str);
}

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

Автор решения: Ilnar

В этом случае поможет это:

str.trim()
→ Ссылка
Автор решения: wigravy

Если задача извлечь из строки все цифры, то можно воспользоваться регулярным выражением:

public class Test {
    public static void main(String[] args) {
        String text = "-jaskdh2367sd.27askjdfh23";
        int out = Integer.parseInt(text.replaceAll("[^0-9]", ""));
        System.out.println(out);
    }
}
//вывод: 23672723

Если Вам нужно оставить точки, то просто добавьте их в квадратные скобки регулярного выражения. Не забудьте в этом случае поменять int на double и изменить парсинг.

replaceAll("[^0-9.]", ""));
→ Ссылка