如何将值和字符串输入到类对象中?获取NullPointerException

时间:2014-09-30 17:08:54

标签: java arrays object vector

我正在尝试将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。

2 个答案:

答案 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;的方法中。不知何故,它传递了一个空参数。