Всё оч просто, мой друк.
Парсинг строки, репрезентирующей целое число со знаком в Java, может быть осуществлён с применением статического метода parseInt(String s, int radix) класса java.lang.Integer.
В твоём случае, для конвертации строки "-23" в целочисленный тип int, необходимо вызвать метод следующим образом: String str = "-23";
int parsedInt = Integer.parseInt(str, 10); Метод parseInt(String s, int radix) выполнит лексический анализ строки s, интерпретируя её как представление целого числа в десятичной системе счисления. В случае успеха, будет возвращено целочисленное значение типа int, соответствующее представлению в строке. Присутствие знака "-" перед числовым значением будет корректно интерпретировано, и результирующее значение parsedInt будет равно -23.
Если в строке могут быть только целые числа без ноля, то проверяешь первый символ на минус. Если там не минус, то просто .toInt. А если минус, то берешь строку без первого символа, делаешь с ней .toInt и умножаешь на минус 1
Для преобразования строки в целое число в Java, включая сохранение знака минуса, можно воспользоваться методом Integer.parseInt(). Вот пример кода:
String str = "-23";
int number = Integer.parseInt(str);
System.out.println(number); // Выведет: -23
Этот код преобразует строку "-23" в целое число -23. При необходимости можно также обработать исключения, которые могут возникнуть при некорректном формате строки.