java - 使用用户输入值显示数组列表中的特定对象

标签 java arraylist

我正在尝试创建一个程序,用户输入与动物相关的值,然后创建动物对象,然后将其保存到数组列表中。我遇到问题的区域如下所示。填充数组列表后,我无法弄清楚如何使用用户输入(选择)来查找数组列表中的值索引。 (int索引=animalList.indexOf(?))

非常感谢任何帮助

Scanner in = new Scanner(System.in);
  List <Animal> animalList = new ArrayList <Animal>();
    char ans;

do{  // User input
  Animal animal = new Animal(); // arraylist

   System.out.println("Animal's 'common' name: ");
     animal.setName(in.next());

   System.out.println("Animal's class: ");
     animal.setAnmlClass(in.next());

   System.out.println("Vertabrate or Invertabrate: ");
     animal.setCharVert(in.next());

   System.out.println("Warm or Cold blooded: ");
     animal.setCharBld(in.next());

   System.out.println("Animal's habitat (general): ");
     animal.setCharHab(in.next());

   System.out.println("Would you like to enter in a new animal (y/n)? ");
     String answer = in.next();
        ans = answer.charAt(0);

    animalList.add(animal);

  }while(ans == 'y');

   System.out.println("Enter the animal you wish to view: ");
     String select = in.next();
     System.out.println(select);
     int index =  animalList.indexOf( ? );
     System.out.println(index);

最佳答案

您可以考虑制作一个哈希表而不是列表,并以动物名称作为键。

关于java - 使用用户输入值显示数组列表中的特定对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30986775/

相关文章:

java - 能否将 GWT 配置为在用户主文件夹以外的其他位置创建缓存文件?

java - Java 中等效的 'nth_element' 函数是什么?

java - Android 将 ArrayList<Model> 从 Activity 传递给 Fragment

java - 如何更新ArrayList中某个位置的对象?

java - Kotlin 库导出为 Jar 可在 Java 代码中使用,但不能在 Kotlin 代码中使用

java - 当 while(true) 在线程中循环时 JFrame 卡住

java - 延迟调用 Spring 组件方法

java - 将 list<map<string,object>> 转换为 POJO 类的对象

java - 如何将 ArrayList 绑定(bind)到 Oracle 中的 PreparedStatement?

powershell - 使用 Powershell 更改大型 CSV 文件中的分隔符