bounded-wildcard

    0熱度

    2回答

    這裏是我的問題: 我的功能在A級: public void setData(Map<String,? extends ArrayList<? extends SomeInterface>>){...} 我的電話: Map<String, ArrayList<ImplementsSomeInterface>> a=...; instanceOfA.setData(a); //does not

    1熱度

    1回答

    我有一個對象定義如下: protected Map<String, ? extends List<? extends LightGeometry>> geoms=new HashMap<String,List<LightGeometry>>(); 我嘗試的對象,看起來符合通配符 ArrayList<LightGeometry> points=new ArrayList<LightGeometr

    1熱度

    2回答

    我是Java新手,已經陷入了一種情況,很明顯我誤解了它如何處理泛型,但是閱讀教程和搜索stackoverflow並沒有(至少目前爲止)除此之外,我認爲我濫用通配符。作爲一個頭腦,我有一個C++背景,所以它如何處理模板可能會着色我如何處理這個問題。 使用有代表性的類 abstract class PacketHeader{ // some stuff } class TypeOfPa

    2熱度

    2回答

    我維護2個具有相同功能的項目,並將此功能整合到一個公共項目中。我定義的接口: public interface GraphData { public List<? extends ShapeData> getShapes(); public void setShapes(List<? extends ShapeData> shapes); } 我在兩個項目中實現這個接口

    0熱度

    3回答

    在Maurice Naftalin,Philip Wadler撰寫的「Java泛型和收集」一書中,我遇到了泛型限制,並提出了疑問。可能是書中的答案,但我認爲我很困惑。 在下面的代碼: List<List<?>> lists = new ArrayList<List<?>>(); lists.add(Arrays.asList(1,2,3)); lists.add(Arrays.asList("

    0熱度

    2回答

    Stack<?>[] stacks = { new Stack<Bed>(), new Stack<Bookshelves>(), new Stack<Chair>(), new Stack<Desk>(), new Stack<Table>() }; 這就是製作堆棧數組的代碼。我將它們放入數組的原因是因爲它是Assignment的要求之一。

    0熱度

    3回答

    聲明是這樣的: class A<X extends Number & List> { } 是這樣allowed.Whereas聲明是不允許的。 class A<? extends Number & List> { } 是否有關於爲什麼Java的限制我們做任何合理的解釋? &什麼 <T extends Number> & <? extends Number>?

    4熱度

    1回答

    作爲followup to this question,是否可以編寫一個方法,將Dog添加到合適的房間? (在這個例子中,它會接受一個Animal房間或一個Dog房間。)或者我被迫寫下兩個不同的方法,如下所示? (由於類型擦除,我甚至不能依靠超載)。 public class Rooms { interface Animal {} class Dog implements An

    3熱度

    1回答

    這種情況似乎是Eclipse的Java編譯器壓縮javac的另一種情況。對我來說唯一的問題是它是否是JLS或javac中的錯誤。 interface EndoFunctor< C, FC extends EndoFunctor< C, FC > > { /*...*/ } interface Algebra< C, FC extends EndoFunctor< ? extends C, FC

    3熱度

    1回答

    我正在編寫泛型抽象(稱爲Iterable<T>)作爲運算符的函數式靜態助手方法,我對使用通配符的時間有點困惑。在以下情況下,什麼是正確的,最安全和最簡單的方法簽名?爲什麼? 檢查屬性: public static int size(Iterable<?> source) 與 public static <T> int size(Iterable<T> source) 轉化: public stat