2016-04-03 60 views
0

我有这样的代码:java - 如何检查List或Set类型的字段是否为空?

for (final Field field : fields) { 
    if (Collection.class.isAssignableFrom(field.getType())) { 

    } 
} 

如何检查是否领域(可以列出或设置类型)为空或空?

+0

https://docs.oracle.com/javase/7/docs/api/java/util/Collection.html#isEmpty() – manouti

+0

另外https://开头docs.oracle.com/javase/7/docs/api/java/lang/Class.html#cast(java.lang.Object)。 – manouti

回答

0

您可以使用此:

for (final Field field : fields) 
{ 
    if (Collection.class.isAssignableFrom(field.getType())) 
    { 
     field.setAccessible(true); // required if the field is not public (that is very likely) 
     if (((Collection) field.get(object)).isEmpty()) // "object" being the object which owns your fields 
     { 
      System.out.println("Field is empty"); 
     } 
    } 
} 
+0

THX !!。它解决了我的问题。作品像魅力:) – djuka

+0

不客气。很高兴帮助:) – Cootri