Читать как цифры, так и буквы?

Я создаю консольную программу на Java, которая читает входное значение, состоящее из букв и цифр, и этот результат должен быть перенесен на следующую строку ввода.

Однако, когда бы я ни вводил цифры и буквы, программа просто возвращает код ошибки. Ниже приводится схема кода, который я написал. Где int plate код, я чувствую, что мне нужно ввести что-то другое, как я хотел бы код для регистрации букв и цифр, аналогичных AAA111 и верните их на следующую строку кода.

Любая помощь, которая может быть предоставлена ​​в отношении проблемы и самого макета кодирования (я все еще новичок во всем этом), будет высоко оценена;

public static void main(String []args)
{
   {
      System.out.printf("Welcome to the input System\n\n");

      Scanner inputObject = new Scanner(System.in);

      int plate;
      int hours;

      System.out.printf("Enter the licence plate number of car 1 ==>");
      plate = inputObject.nextInt();
      System.out.printf("Enter the hours car: " +plate+ " was parked==>");
      hours = inputObject.nextInt();
   }
}

2 ответа

Если вы используете next() вместо nextInt(), вы получите String. Так что измените тип табличной переменной для строки, и вы сможете использовать plate = inputObject.next()

Во-первых, вы хотите сохранить буквенно-цифровое значение в табличной переменной. Поэтому это должно быть Stringне инт.

Затем, чтобы прочитать строку (полная строка ввода в консоли) вам нужно вызвать scanner.next(),

scanner.nextInt() будет читать только целые числа, пока вы вводите буквенно-цифровое значение.

public static void main(String []args)
    {
    System.out.printf("Welcome to the input System\n\n");
    Scanner inputObject = new Scanner(System.in);

    String plate;
    int hours;
    System.out.printf("Enter the licence plate number of car 1 ==>");
    plate = inputObject.next();
    System.out.printf("Enter the hours car: " +plate+ " was parked==>");
    hours = inputObject.nextInt();
}
Другие вопросы по тегам