public class Task {
    static Scanner reader = new Scanner(System.in);
    public static int checkNumber() {
        int a = 0;
      while (!reader.hasNextInt())   {
            System.out.println("Это не число");
            reader.next();
        }
        a = reader.nextInt();

      if (a / 10 > 9.9){
          System.out.println("Это не двухзначное число");
          checkNumber();
      }
        return a;
    }

    public static void main(String[] args) {
        System.out.println(checkNumber());
    }
}
Пример ввода данных и ответ на них qwe Это не число 100 Это не двухзначное число 10 100 - почему вернулось не 10???