我的验证方法不起作用,我哪里错了?

时间:2016-12-05 20:00:56

标签: java

以下方法的目的应该检查用户的输入,使其与seriesLibrary对象中包含的arrayList中的值匹配。它目前无法这样做并且继续输出else选项,尽管arrayList

中有值
public static String checkUserInputSeriesName(Scanner sc, SeriesLibrary seriesLibrary){
    boolean validInput = false;
    String seriesName = null;
    do{
        validInput = false;
        seriesName=sc.nextLine();
        for(int i = 0; i < seriesLibrary.getTvSeries().size(); i++){
            if(seriesName.equals(seriesLibrary.getTvSeries().get(i))){
                validInput = true;
            }else{
                System.out.println("That Series does not exist, please try again!");
                sc.nextLine();
            }
        }   
    }while(!validInput);
    return seriesName;
}

1 个答案:

答案 0 :(得分:0)

public static String checkUserInputSeriesName(Scanner sc, SeriesLibrary seriesLibrary){
    boolean validInput = false;
    String seriesName = null;
    do{
        validInput = false;
        seriesName=sc.nextLine();
        for(int i = 0; i < seriesLibrary.getTvSeries().size(); i++){
            if(seriesName.equals(seriesLibrary.getTvSeries().get(i))){
                validInput = true;
            }
        }  
        if(!validInput){
            System.out.println("That Series does not exist, please try again!");
            sc.nextLine();
        } 
    }while(!validInput);
    return seriesName;
}