2015-10-29 32 views
0

我有很多的名單如下:如何獲得名parametr在列表與反思

.. 
public java.util.List<ComId> comIds; 
public java.util.List<Notification> notifications; 
public java.util.List<ProductItem> productItems; 
.. 

以及使用Java反射來閱讀本我。

輸入:

for (Field f : fields) { 
    Class<?> type = f.getType(); 
    String genName = f.getGenericType().getTypeName().toString(); 
} 

我得到了這樣的結果:

java.util.List<my.package.Customer.ComId> 
java.util.List<my.package.Customer.Notification> 
java.util.List<my.package.Customer.ProductItem> 
.. 

我只是想只得到:

ComId 
Notification 
ProductItem 
.. 

我怎樣才能做到這一點?

+0

你爲什麼不使用正則表達式?或者其他一些String方法,如[here](https://docs.oracle.com/javase/tutorial/java/data/comparestrings.html)? – 0X0nosugar

回答

-1

試試這個:

String genName = f.getGenericType().getActualTypeArguments()[0].toString(); 
+0

你能否添加一些爲什麼這應該工作的細節?僅有代碼的答案不是非常有用,可能會被刪除。 – Cristik