我正在嘗試爲ArrayList類型編寫一個itertor,其中Number是一個類。參數化類型的Java迭代器
我可以幾乎做到這一點,但我得到的錯誤:
這是類定義
public class History implements Iterable<ArrayList<Number>> {
這是我要遍歷類型的定義:
private ArrayList<Number> spins = new ArrayList<Number>();
...這裏是迭代函數:
@Override
public Iterator<ArrayList<Number>> iterator() {
Iterator<ArrayList<Number>> it = new Iterator<ArrayList<Number>>() {
private int currentIndex = 0;
@Override
public boolean hasNext() {
return currentIndex < gethistorySize() && spins.get(currentIndex) != null;
}
@Override
public ArrayList<Number> next() {
return spins.get(currentIndex++); // ** ERROR **
}
@Override
public void remove() {
throw new UnsupportedOperationException();
}
};
return it;
}
我得到了線的錯誤標記**錯誤**
我得到的錯誤是:
在該行 多個標記 - 該類型的表達式必須是一個數組類型,但它解決了到ArrayLisy - 類型不匹配:無法從Number轉換爲ArrayList
我不太確定此處返回的內容。
任何人都可以幫忙嗎?
THX
這行 多個標記 - 該類型的表達式必須是一個數組類型,但它決心ArrayLisy 類型不匹配:不能從數CONVER到ArrayList的 –
Graham
您可以加入錯誤信息使人們有同樣的問題,就能夠找到你的問題和可能的答案? – Pshemo
完成上面,對不起 - 只是要注意,這不是一個運行時錯誤,而是一個「屏幕錯誤」,所以不能complie – Graham