Error de falta de coincidencia de entrada de Java utilizando el escáner
Soy un estudiante novato de Java y estoy tratando de completar un programa que usa el escáner para ingresar los nombres de 5 estudiantes y luego un ciclo para obtener 3 calificaciones para cada estudiante. Estoy atascado porque sigo recibiendo un error de falta de coincidencia de entrada y no sé por qué. He intentado hacer coincidir correctamente los tipos de entrada que entran en las variables. Cualquier ayuda sería muy apreciada!
Esto es lo que tengo:
import java.util.Scanner;
public class StudentGrades {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// Declare arrays, grades to hold [student #][course] and correspond to the grade. studentNames to be paralell and hold the names.
int [][] grades;
grades = new int[5][3];
String[] studentNames = new String[5];
int studentNumber = 0;
int courseNumber = 0;
// Create loops to put values in both arrays, using student# as a counter
if (studentNumber < 5) {
System.out.println("Enter the student name");
studentNames[studentNumber] = input.next();
// Nested loop to enter the grades
if (courseNumber < 5) {
System.out.println(" Enter a grade for " + studentNames[studentNumber]+" for course #" + courseNumber);
grades[studentNumber][courseNumber] = input.nextInt();
courseNumber = courseNumber + 1;
}
studentNumber = studentNumber + 1;
}
}
}
Y esto es lo que obtengo:
Exception at thread "main" java.util.InputMismatchException
at java.util.Scanner.throwfor{Scanner.java:909}
at java.util.Scanner.next{Scanner.java:1530}
at java.util.Scanner.nextInt{Scanner.java:2160}
at java.util.Scanner.nextInt{Scanner.java:2119}
at StudentGrades.main{StudentGrades.java:20}