6

私は Groovy に恋をして、ますますそれを使用しようとしました。次に、Oracle Forms Jdapi ライブラリを使用する必要があります。このライブラリを使用する場合、次のような多くのコードを記述します。

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

そしてもちろん書きたい

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

しかし、私は既存の Java ライブラリーへの Groovy インターフェースを作成したことがなく、何らかの支援が必要です。Groovy 2.0 の拡張メソッドについては知っていますが、その場合、保持したい関数だけに委譲する別の名前空間にある同じ名前のクラスについて考えています。

機能を提供するための最良のアプローチは何eachですか?また、コレクションに適用可能な他のすべてのクロージャーは何ですか? 正しい方向に向けていただければ幸いです。

4

1 に答える 1

6

指定する必要がある唯一のメソッドは、iterator()メソッドです。これで、Groovy Object のすべての反復メソッド ( each()find()any()every()collect()...) を無料で入手できます!

于 2013-02-21T17:37:58.680 に答える