我有一个groovy类,可以将其输出写入StringWriter
- (通过setStringWriter
方法)。
在java中我会使用以下代码:
filter.setStringWriter(new StringWriter(){
@Override
public void write(String string){
// do something with the string
}
});
对于Groovy我被告知要使用一个闭包,我尝试了以下但没有运气:
def s = {String line -> print line} as StringWriter
filter.setStringWriter(s)
或
filter.setStringWriter{String line -> print line}
我该怎么做呢,或者甚至可能吗?
答案 0 :(得分:12)
以下link给出了一个线索,尽管它只提到了接口。
以下适用于Groovy 1.6.1:
def s = [ write: { String line -> print line} ] as StringWriter
filter.setStringWriter(s)