Java 循环检查用户的输入是否有空白
我的任务是编写一个应用程序,从用户那里获取输入,并将每个答案存储在一个字符串数组中。此应用程序还必须检查用户输入的空值,并重新提示用户输入答案。应用程序必须只重复空问题,因为此应用程序可以回答50个问题 以下是我目前的代码:Java 循环检查用户的输入是否有空白,java,arrays,Java,Arrays,我的任务是编写一个应用程序,从用户那里获取输入,并将每个答案存储在一个字符串数组中。此应用程序还必须检查用户输入的空值,并重新提示用户输入答案。应用程序必须只重复空问题,因为此应用程序可以回答50个问题 以下是我目前的代码: for(iLoop=0; iLoop<noOfQuest; iLoop++) { if(noOfEmails<1) { System.out.println("FIL
for(iLoop=0; iLoop<noOfQuest; iLoop++)
{
if(noOfEmails<1)
{
System.out.println("FILE_ERROR: Please ensure line \"noOfEmails\" is more than 0");
}
if(noOfQuest==1)
{
System.out.println(prefinalMess);
System.out.println(questionArr[0]);
ansArray[iLoop]=ans.next();
System.out.println(finalMess);
}
if(noOfQuest==2)
{
System.out.println(questionArr[0]);
ansArray[iLoop]=ans.next();
System.out.println(prefinalMess);
System.out.println(questionArr[1]);
ansArray[iLoop]=ans.next();
System.out.println(finalMess);
}
if(noOfQuest==3)
{
System.out.println(questionArr[0]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[1]);
ansArray[iLoop]=ans.next();
System.out.println(prefinalMess);
System.out.println(questionArr[2]);
ansArray[iLoop]=ans.next();
System.out.println(finalMess);
}
if(noOfQuest==4)
{
System.out.println(questionArr[0]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[1]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[2]);
ansArray[iLoop]=ans.next();
System.out.println(prefinalMess);
System.out.println(questionArr[3]);
ansArray[iLoop]=ans.next();
System.out.println(finalMess);
}
if(noOfQuest==5)
{
System.out.println(questionArr[0]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[1]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[2]);
ansArray[iLoop]=ans.next();
System.out.println(questionArr[3]);
ansArray[iLoop]=ans.next();
System.out.println(prefinalMess);
System.out.println(questionArr[3]);
ansArray[iLoop]=ans.next();
System.out.println(finalMess);
}
}
我还必须开发方法来检查每个答案的输入。这里有一个小方法来读取和检查用户从命令行输入的内容:
public static List<String> readNLinesOfInput(int lines2Read){
List<String> inputs = new ArrayList<String>();
try (Scanner sc = new Scanner(System.in)) {
while(inputs.size() < lines2Read) {
System.out.println("Enter the "+(inputs.size()+1)+" line: ");
String line = sc.nextLine();
if("".equals(line)){
System.out.print("Empty lines a not allowed. ");
continue;
}
inputs.add(line);
}
}
return inputs;
}
您可以调用它并在每行上迭代,如下所示:
public static void main(String[] args) {
List<String> list = readNLinesOfInput(50);
for(String line: list){
System.out.println(line);
}
}
非常感谢,当涉及到添加更多问题时,这会使我的工作更轻松:3