2016-04-14 13 views
1

私はgroovyでメソッドを持っています。このメソッドにはparam?という2番目のパラメータがあります。私はこのパラメータを省略し、最初と3番目のパラメータだけを渡したいと思います。それを行う方法はありますか?Groovyオプションパラメータの中心値を省略

答えて

5

クラスを変更しないでください

なぜ2つのパラメータしか取らない新しいメソッドを追加してみませんか?

オプションのパラメータを最後に移動し、デフォルト値を指定しますか?

それとも、あなたが過負荷状態にする方法について話しているが、としてグルーヴィーデフォルトを与えるのみ(中央パラメータの中にデフォルト値をとスティック)2つのparamsを取る閉鎖

String threeParams(String a, int b, String c) { 
    "$a:$b:$c" 
} 

Closure midCurry(int b) { 
    { String a, String c -> threeParams(a, b, c) } 
} 

def twoParams = midCurry(1) 

assert twoParams('tim', 'yates') == 'tim:1:yates' 
+0

を返すメソッドを定義することができますパラメータのvalueオプション。私は自分自身を提供する彼らのデフォルトと残りのために真ん中を残すことができます。 –

+0

いいえ、私はないと思います。 100%確信していない –