Как проверить строку на цифры java

Аватар пользователя Сергей Якимович
Сергей Якимович
18 ноября 2022

Чтобы проверить все ли символы цифры :

        String word = "12345";
        boolean isOnlyDigits = true;
        for(int i = 0; i < word.length() && isOnlyDigits; i++) {
            if(!Character.isDigit(word.charAt(i))) {
                isOnlyDigits = false;
            }
        }
        System.out.println(isOnlyDigits); // => true

Чтобы проверить есть ли цифры :

        String word = "ab1cde";
        boolean hasDigits = false;
        for(int i = 0; i < word.length() && !hasDigits; i++) {
            if(Character.isDigit(word.charAt(i))) {
                hasDigits = true;
            }
        }
        System.out.println(hasDigits); // => true
1 0
Аватар пользователя Maksim Litvinov
Maksim Litvinov
30 декабря 2021

Для того, чтобы проверить строку на цифры, можно воспользоваться методами класса StringUtils из библиотеки Apache Commons Lang. Этот класс содержит множество полезных методов, которые упрощают работу со строками. Для начала нужно установить в проект новую зависимость. Если вы используете gradle, нужно добавить в файл build.gradle в секцию dependencies такой код:

implementation 'org.apache.commons:commons-lang3:3.12.0'

Затем класс нужно импортировать в том месте, где вы планируете его использовать:

import org.apache.commons.lang3.StringUtils;

Для проверки строки на цифры, в классе есть статический метод isNumeric(). В качестве аргумента метод принимает последовательность символов CharSequence и возвращает булево значение в зависимости от того, состоит ли строка только из цифр.

StringUtils.isNumeric("hello"); // false
StringUtils.isNumeric("hello12"); // false
StringUtils.isNumeric("123"); // true
1 0