这是数组的初始化。我已经有了已经可以使用的get和set方法。我的问题是示例,我使用我的addStudent方法,然后输入了三个名称。我输入的只有第一个学生为真,否则为假
static ArrayList<Dynamic> users = new ArrayList<Dynamic>();
这是我的搜索方法
public static void searchStudent() {
String trash= in.nextLine();
System.out.println("Please Enter First Name");
String find = in.nextLine();
for (int i=0; i<users.size(); i++) {
if(find.equalsIgnoreCase(users.get(i).getfName())){
System.out.println("Student is Found");
System.out.println(users.get(i));
menu();
}
else {
System.out.println("Student Not found");
menu();
}
}
}//end of searchStudent
最佳答案
仅当学生是ArrayList中的第一个元素时,当前代码才会打印“找到学生”。要使其在整个列表中进行搜索,请将代码放入else块中,使其循环外。
public static void searchStudent() {
String trash= in.nextLine();
System.out.println("Please Enter First Name");
String find = in.nextLine();
for (int i=0; i<users.size(); i++) {
if(find.equalsIgnoreCase(users.get(i).getfName())){
System.out.println("Student is Found");
System.out.println(users.get(i));
menu();
}
}
System.out.println("Student Not found");
menu();
}//end of searchStudent
关于java - 我在搜索arraylist的方法中遇到问题。该条件仅在第一个索引中为真,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59115931/