我有一种添加剧集/多集的方法,使用sc.nextInt
进行验证,然后使用sc.nextLine
输入episode(s)
的名称。
但是,sc.nextInt
会阻止sc.nextLine
执行。我尝试从字符串中解析整数,但这会导致输入不匹配。在两者之间放置sc.nextLine
也不起作用。有什么提示吗?
public void addepisodes(Scanner sc) {
int arraylistlength;
System.out.println("How many Episodes are in this Series?");
boolean valid=false;
do{
if(sc.hasNextInt()){
valid=true;
arraylistlength = Integer.parseInt(sc.nextLine());
System.out.println("Please enter List of Episodes");
for (int i = 0; i < arraylistlength; i++) {
System.out.println("Episode " + (i + 1));
String nextEp = sc.nextLine();
list_of_episodes.add(nextEp);
}
}
else{
System.out.println("Error, input an integer");
sc.next();
}
}while(!valid);
}