java - 将java代码重写为groovy代码

标签 java groovy

我有 Java 代码。

MyObject a = MyObject.newMyObject();
a.setParameter(Parameters.BASIC);
CompositeObject co = CompositeObject.newCompositeObject();
co.add(BasicFactory.newInputStream(new FileInputStream(file), ResourceType.BASIC, a);

是否可以使用 Groovy 做得更好?

最佳答案

这是一个开始。

def a = MyObject.newMyObject()
a.parameter = Parameters.BASIC
def co = CompositeObject.newCompositeObject()
co.add(BasicFactory.newInputStream(new FileInputStream(file), ResourceType.BASIC, a))

如果您真正需要的是co,那么您可以执行类似的操作来限制临时变量的范围。

def co = CompositeObject.newCompositeObject().with {
    def a = MyObject.newMyObject()
    a.parameter = Parameters.BASIC    
    def factory = BasicFactory.newInputStream(new FileInputStream(file), ResourceType.BASIC, a)
    co.add factory

    return it
}

关于java - 将java代码重写为groovy代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33126036/

相关文章:

java - 无法解析类型 java.util.Map$Entry。它是从所需的 .class 文件中间接引用的

groovy - 星云测试无法在类路径中找到用于copyResources的资源目录

java - 什么是PECS(生产者扩展了 super 消费者)?

java - 将 Spock 测试框架集成到 Eclipse Neon2 v4.6.2

groovy - 将元组列表映射到 Groovy 中的第二个元素列表?

java - 像 SoapUI 中那样用 Java 代码执行结果替换字符串中的 Groovy 代码片段

windows - 如何以与 "cmd/c <command>".execute() 相同的方式从 groovy 运行 PowerShell 命令?

java - spring抽象="true"是什么意思?

java - 摩托罗拉 LS1203 条码扫描器

java - 无法将 CryptoPermission 添加到 java.policy 文件