[英]Check what type a list class is of in java
鑒於我有一個
Class<?> clazz
我想驗證clazz
是否是我的特定對象的列表
所以我開始
if (List.class.isAssignableFrom(type)) {
}
但直到這里我才核實它是List<?>
。 我如何驗證它是否是List<String>
?
你不能。 由於泛型的性質,在運行時類型信息被擦除。 如果您有一個空List
,則無法確定任何內容。 如果它是非空的,您可以檢查第一個元素並查看它是否為String
。 那當然不會告訴它是List<String>
, List<CharSequence>
還是原始列表。
如果你得到它,你打算如何處理這些信息? 必然會有更好的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.