使Java库“Groovy”

时间:2013-02-21 15:47:22

标签: groovy

我爱上了Groovy并尝试越来越多地使用它。现在我必须使用Oracle Forms Jdapi库。使用这个库时,你会编写很多这样的代码:

JdapiIterator progIterator = getWorkForm().getProgramUnits();
while(progIterator.hasNext()) {
    ProgramUnit currProgUnit = (ProgramUnit) progIterator.next();
    ...
}

和cource我想写

getWorkForm().programUnits.each {
    ...
}

但是,我从未在现有Java库中编写Groovy接口,需要一些帮助。我知道Groovy 2.0's extension methods,但在这种情况下,我正在考虑一个在不同命名空间中具有相同名称的类,它只委托我想保留的函数。

提供each功能的最佳方法是什么,还有适用于集合的所有其他闭包?如果你指出我正确的方向,我将不胜感激!

1 个答案:

答案 0 :(得分:6)

您需要提供的唯一方法是iterator()方法。然后,您可以免费获得所有Groovy Object迭代方法(each()find()any()every()collect(),...)! p>