在我的項目中,我們使用的外部API不是通用的,所以有一個名爲ItemList
的類,它的實現爲java.util.List
,它包含一個Item
對象的列表。然而,在我們的新代碼中,我們表達這種List<Item>
,我要編寫能夠既需要ItemList
和List<Item>
, 我試過這種簽名的方法:在傳統代碼中使用泛型
public static void readList(List<?> list) {}
它工作正常,但問題是有從Object
到Item
在此方法中投射,當參數爲ItemList
時使用,而List<Item>
不需要,是否有更好的方法可以做到這一點?
有趣的是,您認爲Java的「泛型」實現可以使您的代碼「現代化」,因爲它們只是在編譯器最早的便利情況下才拋出去......呵呵再次年輕無辜! – Blindy
@Bindind,可悲的是SO不能投票給你的垃圾評論。 – Sawyer
@Bindind:試着編寫一些現代代碼來處理一個不具有泛型的「傳統」API ......然後用大量的垃圾處理來摧毀你的眼睛。 –