嘿,我正在尝试从用户那里获取字符串输入(在这种情况下是电影的名称,例如 Good Burger)。我有一个 Film 类的数组列表,我正在从中迭代。在每次迭代中,调用 Film 类实例中的一个方法,该方法返回一个电影名称字符串。当我比较这两者时,它似乎没有认识到它们是平等的,我不知道为什么。
这是接受输入并比较两者的代码:
//获取用户输入的电影。
int numberOfFilmsCheck;
numberOfFilmsCheck = 0;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Film tempFilm;
System.out.println("Please enter the names of the films you wish to be in the new schedule");
System.out.println("Press enter after each one.");
while(numberOfFilmsCheck < numberOfFilms){
boolean foundFilm;
foundFilm = false;
String inputFilmName = null;
tempFilm = null;
String filmName;
filmName = null;
try{
inputFilmName = reader.readLine();
System.out.println(inputFilmName);
}
catch (IOException e){
System.out.println("Error");
}
for(Film film : films){
film.printFilmName();
if(inputFilmName.equals(filmName)){
foundFilm = true;
tempFilm = film;
System.out.println("Found film name");
break;
}
}
if(foundFilm == true){
newFilmsForSchedule.add(tempFilm);
numberOfFilmsCheck++;
}
else{
System.out.println("The film you entered has not been recognised.");
System.out.println("Please enter the film name as shown above.");
}
这是返回电影名称的 Film 类中的代码:
public String getFilmName()
{
return filmName;
}
如果您注意到那里有任何恶意打印语句,那只是我在检查代码是否正常工作。
任何帮助深表感谢!谢谢