Here I put a 4 value in the variable length. I'm supposed to get an array with 4 elements, but I can only input 3 elements.
public static void main(String[] args) {
int length;
Scanner input = new Scanner(System.in);
System.out.print("Length: ");
length = input.nextInt();
String[] my_friend_names = new String[length];
for (int i = 0; i < length; i++) {
my_friend_names[i] = input.nextLine();
}
for (int i = 0; i < length; i++) {
System.out.println("Name: " + my_friend_names[i]);
}
}
OUTPUT:
- Length: 4
- 1
- 2
- 3
- Name:
- Name: 1
- Name: 2
- Name: 3
Now if I change the length variable for a number 4, it works!
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String[] my_friend_names = new String[4];
for (int i = 0; i < 4; i++) {
my_friend_names[i] = input.nextLine();
}
for (int i = 0; i < 4; i++) {
System.out.println("Name: " + my_friend_names[i]);
}
}
OUTPUT:
- 1
- 2
- 3
- 4
- Name: 1
- Name: 2
- Name: 3
- Name: 4
Do you know why that is?