java - 带有初始化对象输入的请求

标签 java input bufferedreader

我想调用一个具有特定名称的对象,我在控制台中输入该名称。 我知道一种方法是使用 switch 语句,但它也应该适用于新的初始化对象。

这是一个代码示例。

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

    String nameObject=null;
    // Create a new Object with a specific name
    System.out.println("Type in the name of the Object");
    try {
        nameObject = reader.readLine();
    } catch (IOException e) {

    }
    Person NewPerson = new Person(nameObject);


    System.out.println("Which Person do you want to have?");
 String requestName = reader.readLine();
//search for the object which has the name requestName
// after this i want find the right person with an reader.??

最佳答案

好吧,首先你可以将你的 Person 类设置为如下:

public class Person {
    public String name;

    public Person(String name) {
        this.name = name;
    }
}

然后创建一个 Person 对象数组,但您可以使用 Person 对象列表:

List<Person> persons = new ArrayList<Person> ();

然后将创建的人员添加到列表中:

persons.add(newPerson);

获取requestName变量后,迭代列表,如下所示:

for(Person p : persons) {
    if (p.name.equals(requestName )) {
        // you got the desired person
        break;
    }
}

关于java - 带有初始化对象输入的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40243562/

相关文章:

java - setColorFilter 应用于所有按钮

java - start() 方法从 start() 调用线程......令人困惑

java - 父 POM/NOOP 父 POM 中的 "Child-only configuration"

c++ - 调试时从文件中读入

带有 txt 文件和 input() 函数的 python 标准输入

java - 有没有办法将文件的 1/4 写入字符串缓冲区?

java - 大型 ByteBuffer 的 BufferedReader?

java - 我有一项 Activity 。在此 Activity 中,我执行了 AsyncTask ,但它不起作用

jquery - 如何使用jquery从隐藏输入类型数组中获取值

java - 使用 BufferedReader 对效率有何影响?