当我在空数组或全数组上使用addItem方法时,它会给我NullPoiterException。 该错误是否是equals方法? 如果数组中包含一些项目,并且方法添加了新项目,则该方法很好用,但是当该数组为满或为空时,将返回空指针异常。
public class GroceryList {
private int count;
private Item[] list;
public static final int MAX = 30;
public GroceryList(){
list = new Item[MAX];
count = 0;
}
public GroceryList(Item[] source){
list = new Item[MAX];
count = 0;
source = new Item[list.length];
for(int pos = 0; pos < source.length; pos++ ) {
source[pos] = list[pos];
if (!(source[pos].equals(null)))
{
count++;
}
}
}
public int getCount(){
return count;
}
public void addItem(Item m) {
m = new Item("piyoz", 12);
if(count < MAX)
{
for(int i = 0;i < list.length; i++)
{
if (list[i].equals(null))
{
list[i] = m;
count++ ;
}
}
}
else
{
}
}
}