[英]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.