在下面的代码中,我在 lName 数组中搜索姓氏,一旦在数组中找不到姓氏,每次在循环中找不到该姓氏时,else 输出就会显示,我将如何解决这个问题?如果我在 else 部分添加一个 return false 语句,它会在检查数组的第一个位置后停止循环。
任何帮助将不胜感激!
public boolean search(String StudentlName)
{
boolean found = true; // set flag to true to begin first pass
while ( found ==true )
{
for (int index = 0; index<lName.length; index ++)
{
if (StudentlName.equalsIgnoreCase(lName[index]) )
{
System.out.println(course+"\n"+
"Student ID = \t"+index+"\n"+
unitTitle + "\n" +
fName[index] + "\n" +
lName[index] + "\n" +
Marks[index] + "\n" + "\n" );
found = false;
return true;//Stops The Loop once Found used to stop infinite loop
}
else
{
System.out.println("Student Not Found");
}
}
return false;
}
return true;
}
如果未找到结果,则显示输出
找不到
学生 找不到
学生 找不到学生 找不到
学生 找不到
学生