在Java中查找GenericArrayList参数的长度

时间:2014-04-07 02:59:24

标签: java arraylist generic-list

作为家庭作业的一部分,我正在为GenericArrayLists的类添加方法。

具体来说,我需要检查通过my方法传递的ArrayList的长度。当我尝试使用arrayINeedToCheck.length时,它给出了一个错误,因为我没有定义该变量(arrayINeedToCheck)。

我不知道我在哪里犯了错误,但我希望你能引导我朝着正确的方向前进。

这是我的代码:

    public void addAll(ArrayListGeneric<E> anotherList)
    {
    int s = (data.length - size);
    if (anotherList.length > s) {
        E[] newData = (E[])(new Object[data.length+anotherList.length]);
        for (i = 0; i < size; i++)
            newData[i] = data[i];
        data = newData;
    }

anotherList.length是问题所在。它说我没有定义那个变量。这是一个参数,所以我认为我不需要再次定义它。因为它的长度和内容是可变的,所以我不能只创建一个新的空数组列表。

帮我堆栈溢出,你是我唯一的希望。

1 个答案:

答案 0 :(得分:1)

如果ArrayListGenericjava.util.ArrayList类似,则不会有公开length字段。也许你想要.size()

编辑:或.size,就像一行所暗示的那样。