2015-04-04 25 views
1

我一直在做一個任務,它需要我幾乎不使用任何內置函數(我知道它是一個類的函數)我自己的ArrayList,它使我到一個我遇到的問題。星號是我得到一個「無法找到符號 - 方法添加(E)」,但我不知道爲什麼。 我也添加了兩個添加方法,我也查看了關於這個問題的各種其他帖子,並且對這裏的解釋知之甚少,因爲我還是一個新的。任何幫助/指針將不勝感激!不能找到符號 - 方法添加(E)

public E[] slice(int beginIndex, int endIndex) 
{ 
    if (endIndex - beginIndex > 0) 
     if (beginIndex >= 0 && endIndex < size) { 
      E[] newList = (E[])(new Object[endIndex - beginIndex]); 
      for (int i = beginIndex; i < endIndex; i++) 
       **newList[i].add(data[i]);** 
      return newList; 
     }else 
      throw new IndexOutOfBoundsException(); 
    return null; 

public void add(E newValue) 
{ 
    if (size == data.length) { 
     E[] newData = (E[])(new Object[data.length*2]); 

     for (int i = 0; i < data.length; i++) 
      newData[i] = data[i]; 
     data = newData; 
    } 
    data[size] = newValue; 
    size++; 

public void add(int index, E newItem) 
{ 
    set(index, newItem); 
} 

回答

2

newList[i]是E型的,不是你的數組列表類型的,所以它沒有一個Add方法。

這將更有意義改變

newList[i].add(data[i]) 

newList[i] = data[i];