2011-02-23 24 views
2

給定描述類AClass<?>,是否有可能獲得與類A[]匹配的Class<?>獲取給定類的數組類<?>

Class<?> clazz = A.class; 
Class<?> arrayclazz = clazz.toArray(); // ?? 

assert arrayclazz.equals(A[].class); 

回答

5
+0

這是一個巧妙的把戲。但是無論如何要保存新實例嗎? – 2011-02-23 13:19:08

+0

@Idan K你可以破解字符串,但創建零長度數組的開銷很小。可能少於創建中間'String'和'StringBuilder',然後解析並查找類。當然,最好的辦法是避免反射,甚至完全參考陣列。 – 2011-02-23 13:20:15

+0

@Tom:這很有道理。我只是有點驚訝,沒有任何Java在沒有訴諸這些技巧的情況下直接做到這一點。 – 2011-02-23 13:23:13

-1

使用A[].class。我希望這個幫助。

+0

以'A'作爲例子。我實際上只有一個'類'。 – 2011-02-23 13:18:12

相關問題