如何使用已经创建的对象作为 java 中的参数

how to use an object that is created already as an argument in java

我的程序中有一个 AddressBook class 和一个 Persons class。 AddressBook class 有一个 Persons 对象数组。

import java.util.*;
public class Persons {
    private String name;
    private String lastName;
    private String addres;
    private String city;
    private String state;
    private int zip;
    private String phoneNumber;

    public Persons(String name , String lastname,String phoneNumber) {
        this.name = name;
        this.lastName = lastname;
        this.phoneNumber = phoneNumber;
    }

//some getter and setter here for all private fields and some other code

这是 AddressBook.addPerson 方法:

public void addPerson(Persons prs) {
    for (int i = 0; i < ArrayOfPerson.length; i++) {
        if (ArrayOfPerson[i] == null) {
            ArrayOfPerson[i] = prs;
            break;
        }
    }
}

Main class :

public class Main {        
    public static void main(String[] args) {
        AddressBook addr = new AddressBook();
        addr.addPerson(new Persons("first name", "first lastname", "123"));// in here for example/ how can i use this person object later
        addr.addPerson(new Persons("second name", "second lastname", "456"));
        addr.addPerson(new Persons("third name", "thirs last name", "789"));
        addr.addPerson(new Persons("fourth name", "fourth last name", "101112"));
    }
}

我的问题是关于 Main class。我怎样才能重新使用创建的人员对象?例如,我想做这样的事情:

System.out.println(x.getname());

其中 x 是由 new 关键字作为参数创建的人物对象。

对不起,如果我的问题是初学者的问题...我在 google 中搜索但一无所获。

您应该将每个 Persons 存储到这样的变量中:

Persons p1 = new Persons("first name","first lastname","123")

然后获取字段 name :

System.out.println(p1.getName());

您必须将此人分配给变量:

Person x = new Persons("fourth name", "fourth last name","101112"));

那么你可以这样做:

addr.addPerson(x);
System.out.println(x.getname());

或者你可以从 mets 中获取元素:

System.out.println(addr.get(3).getname())

您只需要在创建对象时将其分配给一个变量,然后您就可以访问它并将其作为参数传递:

Persons firstOne = new Persons("first name","first lastname","123");

您的代码将是:

public static void main(String[] args) {
    AddressBook addr = new AddressBook();
    Persons firstOne = new Persons("first name","first lastname","123");

    //You will use it as parameter like this:
    addr.addPerson(firstOne);
    addr.addPerson(new Persons("second name", "second lastname","456"));
    addr.addPerson(new Persons("third name", "thirs last name","789"));
    addr.addPerson(new Persons("fourth name", "fourth last name","101112"));
}

然后你可以这样访问它:

System.out.println(firstOne.getname());

或者在不创建变量的情况下,您可以通过其索引从集合中获取它 addr.get(index) :

System.out.println(addr.get(0).getname());

你会这样做:

  public class Main {

public static void main(String[] args) {
    AddressBook addr = new AddressBook();
    addr.addPerson(new Persons("first name","first lastname","123"));// in here for example/ how can i use this person object later
    addr.addPerson(new Persons("second name", "second lastname","456"));
    Person x = new Persons("third name", "thirs last name","789")
    addr.addPerson(x);
    addr.addPerson(new Persons("fourth name", "fourth last name","101112"));
    System.out.println(x.getName());
}