0
我有以下方法:的Java迭代器 - 爲什麼是通用型可選
public Iterator<Item> iterator() {
return new ListIterator();
}
,並在下面的代碼中使用:
Deque<Integer> deque = new Deque<Integer>();
// ...
Iterator<Integer> iter1 = deque.iterator();
Iterator iter2 = deque.iterator();
的問題是 - 爲什麼Java編譯器接受兩條線(iter1
& iter2
)?特別是iter2
對我來說很陌生。當我創建我以前的對象(deque)時,我需要指定兩側的類型。
無論如何,如果我把
Deque deque2 = new Deque();
那麼編譯器是罰款這一點。混亂...
舊的結構(原始類型)會永遠持續向後兼容嗎?還是會被切斷(就像Python 3對Python 2的某些功能所做的那樣)? – ducin
@tkoomzaaskz我不認爲它會在不久的將來被刪除。至少現在,沒有這樣的計劃。 –