我正在創建一個使用2個類的程序。在一個類中,我創建了第二類然後調用的方法。所有方法都包含在第一個類中,而第二個類只是簡單地調用它們並執行代碼。從.txt文件掃描時出現java.util.InputMismatchException錯誤
1級
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Student {
private Scanner scanner;
private String firstName;
private String lastName;
private int homeworkScore;
private int testScore;
private String letterGrade;
private int numberOfStudents;
public Student() {
String firstName = null;
String lastName = null;
int homeworkScore = 0;
int testScore = 0;
String letterGrade = null;
int numberOfStudents = 0;
}
public void openFile(){
try {
scanner = new Scanner(new File("grades.txt"));
} catch (FileNotFoundException e) {
System.out.println("Error opening file. Please make sure that you have a grades.txt file in the same folder as GradeCalculator.class");
System.exit(0);
}
}
public void setNumberOfStudents() {
System.out.println("It kinda works");
numberOfStudents = scanner.nextInt();
}
public void setFastName() {
fastName = scanner.next();
}
public void setLastName() {
lastName = scanner.next();
}
public void setHomeworkScore() {
int subAssignment = 0;
int assignment = 0;
for(int i = 1; i <= 21; i++) {
subAssignment = scanner.nextInt();
assignment += subAssignment;
}
homeworkScore = assignment;
}
2級
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class CourseGrade {
public static void main(String[] args) {
Student myStudent = new Student();
myStudent.openFile();
myStudent.setNumberOfStudents();
myStudent.setFirstName();
myStudent.setLastName();
myStudent.setHomeworkScore();
}
}
這是我的錯誤:
It kinda works
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at Student.setHomeworkScore(Student.java:54)
at CourseGrade.main(CourseGrade.java:20)
...在 「它還挺作品」 聲明只是看如果它正確地調用方法,它看起來是這樣。
據我的理解,錯誤告訴我,它正在從.txt文件中讀取錯誤的類型,但是idk爲什麼會這樣。它甚至正確讀取文件?任何類型的幫助都會很棒,因爲我一直在盯着這個代碼幾個小時!
文件的格式是什麼?我至少有一個猜測。 –
沒有看到輸入數據,就不可能弄清楚......但顯然它不像預期的那樣是'int'。 –