我正在尝试将String name,long phoneNumber和String注释添加到Contact对象,然后将其放入对象数组中。
public class VectorOfContacts implements ProjTwo
{
Contact[] contacts;
public void addContact(Contact c)
{
if(isFull());
incrementCapacity();
size++;
String name = "";
long number = 0;
String comment = "";
c.setName(name);
c.setPhoneNumber(number);
c.setComment(comment);
for (int i = 0; i < contacts.length; i++)
{
if (contacts[i] == null)
{
contacts[i] = c;
}
}
System.out.println("Added to input");
}
}
但是,我从c.setName(name)开始得到一个NullPointerException。
答案 0 :(得分:1)
您没有将联系人的实例传递给方法。你可能正在这样做:
Contact c;
...
addContact(c);
在这种情况下,您实际上是将null传递给addContact方法。你需要这样的东西:
Contact c = new Contact();
...
addContact(c);
答案 1 :(得分:0)
我假设方法&#39; setName&#39;在联系中只是这样做:
public void setName(String name){
this.name = name;
}
如果是这种情况,则c必须为null。这意味着问题出在调用&quot; addContact(Contact c)&#39;的方法中。不知何故,它传递了一个空参数。