Делаю приложение на java, не знаю как одним оператором if проверить string на наличие алфавитных символов
Делаю простое приложение, в котором есть настройки, и в них можно вписать любое значение. Я использовал метод что бы строку перевести в int значение, и надо сделать так, что бы если в строке присутствуют алфавитные символы, выводило в консоль ошибку.
if (!field.getText().contains(...)){
numb = Integer.parseInt(field.getText());
}
Ответы (1 шт):
Автор решения: Nowhere Man
→ Ссылка
Можно использовать регулярное выражение для проверки формата при помощи String::matches:
// формат целого числа с необязательным знаком
if (field.getText().matches("[-+]?\\d+")) {
numb = Integer.parseInt(field.getText());
}
Также можно перед проверкой формата обрезать лишние пробелы, используя String::trim:
String txt = field.getText().trim();
if (txt.matches("[-+]?\\d+")) { // формат целого числа с необязательным знаком
numb = Integer.parseInt(txt);
}