如何用Java迭代Groovy List?

时间:2012-08-19 17:26:16

标签: java groovy

我有以下 Groovy 域类:

class A {

  def lotOfBs = []

}

现在,从 Java 类我需要迭代该数组。这些解决方案不起作用:

for ( B b : a.getLotOfBs() ){
  //COMPILATION ERROR
}

for ( int i = 0 ; i < a.getLotOfBs().length ; i++ ){
  //LENGTH ATTRIBUTE DOES NOT EXIST OR IT IS NOT VISIBLE
}

for ( int i = 0 ; i < a.getLotOfBs().size() ; i++ ){
  //SIZE METHOD DOES NOT EXIST
}

你有什么建议吗?

提前致谢

1 个答案:

答案 0 :(得分:2)

groovy类中的数组是java.util.ArrayList的一个实例,因此转换为Collection&lt; T&gt;应该工作:

  Collection<B> bs = (Collection<B>) a.getLotOfBs();

  for (B b : bs) {
    ...
  }