Вы можете преобразовать строку в массив и проверить, является ли каждый элемент строки (разделенный пробелом) цифрой, протестировав метод Integer.parseInt () для каждого элемента строки.Вот пример ниже:
public static boolean isDig(String theString) {
String[] theStringArray = theString.split(" ");
ArrayList<Integer> nums = new ArrayList<Integer>();
for(int x = 0; x < theStringArray.length; x++) {
String thisString = theStringArray[x];
try {
int num = Integer.parseInt(thisString);
nums.add(num);
}catch(NumberFormatException e) {
continue;
}
}
int total = 0;
for(int num: nums) {
total += num;
}
if(total >= 80 && total <= 95) {
return true;
}
else {
System.out.println(total);
return false;
}
}
Сначала мы разбиваем исходную строку на массив, основанный на пустых местах.Затем мы создаем ArrayList, который добавит к нему каждую цифру в строке.Затем мы создаем цикл for для просмотра каждой отдельной строки в массиве и устанавливаем блок try-catch.Если мы можем преобразовать цифру в int с помощью метода Integer.parseInt (), мы добавим ее в ArrayList.Если нет, мы перехватим исключение и продолжим цикл с помощью оператора continue.Как только мы вырвемся из цикла, мы можем создать переменную под названием «total» и создать еще одну для цикла, чтобы добавить каждую цифру в ArrayList к общей сумме.Если сумма больше / равна 80 и меньше / равна 95, мы вернем True, иначе вернем false.Давайте проверим код:
String digitTest = "There is a digit here: 50 and a digit here 45";
System.out.println(isDig(digitTest));
Числа 50 и 45 должны равняться 95, и наш результат:
true