0
想再去讀做類似如下:獲取泛型集合類,而無需使用一個實例
public class Test {
public static void main(String[] args) {
Map<String, Set<String>> map = new HashMap<String, Set<String>>();
map.put("key1", new HashSet<String>());
Set<String> theSet = getObjectAs(map, ***Set<String>.class***);
}
private static <T> T getObjectAs(Object object, Class<T> cls){
return cls.cast(object);
}
}
但是,這並不工作,我可以用拿不到類對象該組中的.class(參見粗體),因爲它是參數化的。
我想使該方法返回一組誰的類型可能會有所不同(它不會永遠是一組字符串),但我知道,我可以給作爲參數。
有沒有做這樣的事情的另一種方式?
準確的用例是什麼?您正在創建已經鍵入的「地圖」。你甚至不需要「getObjectAs」方法。您只需要:設置< String > theSet = map.get(「key1」); – mightyrick
將映射投射到集合也不起作用 - getObjectAs(map,Set .class); –
jdb