[英]Searching through an object ArrayList
public class favoriteshow {
String name = null;
int age = 0;
String show = null;
public Lab2(String name, int age, String show){
this.name = name;
this.age = age;
this.show = show;
}
public String toString(){
return "Name " + name + " age: " + age + " Favorite show: " + show;
}
}
我的主班:
public class NewClass {
public static void main(String args[]){
int x = 0;
ArrayList<favoriteshow> arraylist = new ArrayList<favoriteshow>();
while( x < 5){
String name;
int age = 0;
String show;
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a name: ");
name = scanner.nextLine();
System.out.print("Enter an age: ");
age = scanner.nextInt();
System.out.print("Enter a show: ");
show = scanner.nextLine();
Lab2 nub1 = new Lab2 (name, age , show);
arraylist.add(nub1);
x++;
}
System.out.println(arraylist);
}
}
(我知道我的while循环仅重复5次,因为我只是对其进行测试。)
因此,我有一个数组列表,用户可以键入一个人的姓名,年龄和喜欢的节目。 我想包含一个搜索功能,因此,如果我要用户输入名称,它将显示所有具有相同名称的人的信息,而不仅仅是第一人。 我也想告诉我这个人在名单上的号码是多少。 例如,如果我要有5个人,其中2个人有相同的名字,分别是2和4位,那么它将告诉我他们是第二位和第四位。
就像在普通数组中一样,只需遍历ArrayList索引,然后与所需字段进行比较,例如:
public void searchAndShow(String name) {
for (int i = 0; i < arraylist.size(); i++) {
favoriteshow fs = arraylist.get(i);
if (fs.getName().equals(name)) {
System.out.println(i + " - " + fs);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.