I get a missing return statement error on the last bracket and I have no idea why. This method basically takes in a string that corresponds to the students course and the current survey question they are on. The outer if statements correspond to the subject (eg: math, science, english...). The for loop iterates through an array and matches the user input ("US History") with a string in an array list. If they are equal, it returns the index at which it was found. Else, it continues the for loop. The method returns an int, but I still get an error on the last bracket. PLEASE HELP!
public static int findNumber(String course, int currentQuestion) {
String newCourse = course.toLowerCase();
if (RateDriver.levelText.equals("math")) {
for (int i = 0; i < RateSurvey.math.length-1;i++) {
if (newCourse.equals(RateSurvey.math[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("science")) {
for (int i = 0; i < RateSurvey.science.length-1;i++) {
if (newCourse.equals(RateSurvey.science[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("english")) {
for (int i = 0; i < RateSurvey.english.length-1;i++) {
if (newCourse.equals(RateSurvey.english[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("social studies")) {
for (int i = 0; i < RateSurvey.social.length-1;i++) {
if (newCourse.equals(RateSurvey.social[i])) return survey[currentQuestion][i];
}
}
else if (RateDriver.levelText.equals("art")) {
for (int i = 0; i < RateSurvey.art.length-1;i++) {
if (newCourse.equals(RateSurvey.art[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("pe")) {
for (int i = 0; i < RateSurvey.pe.length-1;i++) {
if (newCourse.equals(RateSurvey.pe[i])) return survey[currentQuestion][i];
}
}
else if (RateDriver.levelText.equals("chinese")) {
for (int i = 0; i < RateSurvey.chinese.length-1;i++) {
if (newCourse.equals(RateSurvey.chinese[i])) return survey[currentQuestion][i];
}
}
else if (RateDriver.levelText.equals("japanese")) {
for (int i = 0; i < RateSurvey.japanese.length-1;i++) {
if (newCourse.equals(RateSurvey.japanese[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("french")) {
for (int i = 0; i < RateSurvey.french.length-1;i++) {
if (newCourse.equals(RateSurvey.french[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("spanish")) {
for (int i = 0; i < RateSurvey.spanish.length-1;i++) {
if (newCourse.equals(RateSurvey.spanish[i])) return survey[currentQuestion][i];
}
return 100;
}
else if (RateDriver.levelText.equals("hawaiian")) {
for (int i = 0; i < RateSurvey.hawaiian.length-1;i++) {
if (newCourse.equals(RateSurvey.hawaiian[i])) return survey[currentQuestion][i];
}
return 100;
}
else return 100;
**}** // this is where I get the error