public class StudentGrades {
String studentID;
Integer numericGrade;
Scanner input = new Scanner(System.in);
public void loadStudentGrades(){
do{
System.out.println("Please enter a Student ID, or enter 'end' to exit: ");
studentID = input.next();
System.out.println("Please enter numeric grade for the ID above: ");
numericGrade = input.nextInt();
map.put(studentID, numericGrade);
}
while (studentID !String.equals("end")); //this is throwing an error. How is it possible to get this to work?
}
}
我正在研究这个课程,并且发现很难让我的do-while循环中的while部分按照我期望的方式工作。我想说,当studentID不等于"结束"经历循环。
答案 0 :(得分:2)
您的while
条件应更改如下:
while (!studentID.equals("end"))
您当前调用equals
方法的方式不正确,因为该方法不知道您正在尝试将studentID与" end";所有你给它的是"结束"。
答案 1 :(得分:1)
你应该写
while(!studentID.contentEquals("end"));