Core Java · interview question
In a console application, what common issue arises when using Scanner's nextLine() method after nextInt()?
Multiple choiceHardchapter-1-curatedpremiumcore-javaconsole-input-and-output
Scanner scanner = new Scanner(System.in);
int quantity = scanner.nextInt();
scanner.nextLine(); // Consume newline
String productName = scanner.nextLine();Answer and explanation
Correct answer
C. It reads an empty line.
Why
After using 'nextInt()', a newline character is left in the input buffer, causing 'nextLine()' to read it as an empty line. To solve this, you can add an additional 'nextLine()' call to consume the newline.
Test yourself on Core Java
A free test with instant, explained results. No account needed.
More Core Java questions
- In a console shopping cart application, why might you separate input handling from calculations?
- What happens if a subclass does not implement an abstract method from its superclass?
- Why would you choose to use a switch statement instead of multiple if-else statements for handling order status?
- Which part of the following code is responsible for avoiding an off-by-one error?
- Why can using overly complex methods in an e-commerce application become a problem in production code?
- How can a class implementing an interface with a default method call that method from within an overridden method?