创建一个addContact()方法,每次都会创建唯一的联系人

时间:2012-09-16 17:24:46

标签: java object unique

学校作业(初学者Java)要求我创建一个小型联系人管理器程序,我遇到了麻烦。

它要求我们创建几个类 - Address,PhoneNumber,Contact和ContactManager。

在ContactManager中,我们要求创建一个名为addContact()的方法,该方法将为ContactManager中的对象数组添加一个全新的唯一联系人。

但是我无法弄清楚如何使这个方法做我想做的事情,因为每次创建一个新的Contact时,它总是具有相同的名称。如何让它创建的对象每次都有一个唯一的名称(即Contact001,Contact002等)?

另外,假设我可以输入实例变量中的所有数据来测试它,我如何提供创建它所需的所有相关信息? 这是我的代码类:

public class Contact {
//Contact Instance Variables
private String lastName;
private String firstName;
private String middleName;
private Address completeAddress[];
private PhoneNumber phoneNumer[];
private SocialNetworkAccount socialNetworkInfo[];



public Contact(String lastName, String firstName, String middleName,
        Address[] completeAddress, PhoneNumber[] phoneNumer,
        SocialNetworkAccount[] socialNetworkInfo) {
    this.lastName = lastName;
    this.firstName = firstName;
    this.middleName = middleName;
    this.completeAddress = completeAddress;
    this.phoneNumer = phoneNumer;
    this.socialNetworkInfo = socialNetworkInfo;
}

2 个答案:

答案 0 :(得分:0)

在您的ContactManager类中,定义这些

private List<Contact> contacts; 

contacts = new ArrayList<Contact>(); //you should put this in ContactManager constructor

public void addContact(Contact contact) {
 contacts.add(contact);
}

如果您想添加新联系人

//just supply different names, etc. load the information from a file
contactManager.addContact(new Contact(name,surname,....));

...或

添加几个占位符联系人...

int NUM_OF_CONTACTS = 2; //how many contacts to create
for(int i = 0; i < NUM_OF_CONTACTS; ++i) {
 contactManager.addContact(new Contact(("Contact" + i),"Placeholder Surname",..);
}

答案 1 :(得分:0)

“私人列表联系人;”是一个名为contacts的实例变量的声明。

变量的类型是List,它是java.util包中的特定类型的Collection对象。

列表<Contact>是一种向编译器声明此列表仅包含Contact对象的方法。请参阅java教程中的“泛型”。