'??' が存在する groovy について読んだ漠然とした記憶があります。メソッド名を動的にするために使用できるシュガー。これが Grails の動的ファインダーを実現する方法だと思っていましたが、思い出すとグルーヴィーだったのか疑問です。例を考えると:いくつかのメソッドでクラスを作成します
class GroovyExample {
public def getThingOne(){return '1'}
public def getThingTwo(){return '2'}
public def getModifiedThingOne(){
return this.modify(this.thingOne)
}
// *!!!* I want to get rid of this second modifying method *!!!*
public def getModifiedThingTwo(){
return this.modify(this.thingTwo)
}
private def modify(def thing){
//...
return modifiedThing
}
}
??
次のようなものまでDRYするために使用できるメソッド名の砂糖はありますか:
class GroovyExample {
public def getThingOne(){return '1'}
public def getThingTwo(){return '2'}
// Replaced the two getModifiedXX methods with a getModified?? method I think I can do....
public def getModified??(){
return this.modify(this."${howeverYouReferenceTheQuestionMarks}")
}
private def modify(def thing){
//...
return modifiedThing
}
}
new GroovyExample().modifiedThingTwo
アイデアは、「変更ヘルパーメソッド」を 1 つだけ使用して、どちらの方法でも呼び出して同じ答えを得ることができるということです。これは可能ですか???
と呼ばれるものは何ですか?String
(一生グーグルで検索することはできません。) そして、 「in」を参照するにはどうすればよい??
ですか?