Thats because the Scanner#nextInt method does not read the last newline character of your input, and thus that newline is consumed in the next call to Scanner#nextLine
Workaround:
Either fire a blank Scanner#nextLine call after Scanner#nextInt to consume newline
int option = input.nextInt();
input.nextLine(); // Consume newline left-over
String str1 = input.nextLine();
Or, it would be even better, if you read the input through Scanner#nextLine and convert your input to integer using Integer#parseInt(String) method.
int option = 0;
try {
option = Integer.parseInt(input.nextLine());
} catch (NumberFormatException e) {
e.printStackTrace();
}
String str1 = input.nextLine();
You will encounter the similar behaviour when you use Scanner#nextLine after Scanner#next() or any Scanner#nextXXX method for except nextLine itself.