Читать как цифры, так и буквы?
Я создаю консольную программу на 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();
}