class - Groovy 为我的类(class)设置 .each 行为

标签 class groovy each

我的项目中有一个类,其中定义了一个列表。能不能指点each (以及所有后续相关方法,例如 eachWithIndex )来使用该列表。

我能看到的唯一可能的解决方案是让我的类(class)扩展 List ,我宁愿不这样做。

最佳答案

您可以使用 @Delegate 下面的转换将这些方法调用委托(delegate)给 List :

class Test {
    @Delegate List myList
}

new Test(myList: [1, 2, 3]).each { println it }

new Test(myList: ['a', 'b', 'c']).eachWithIndex { val, index -> 
    println "$val at $index" 
}

关于class - Groovy 为我的类(class)设置 .each 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25634393/

相关文章:

c# - 寻找一种方法来隐藏类的基类

java - 如何使用 Nailgun Server 启动 Groovy 脚本(或 Java 类)

variables - Sass - 在@each中使用不同的变量

Javascript 每次循环问题

c - 将 Objective-C 类包装在 C 结构中以镜像类名

javascript - 在 JavaScript 类中抛出错误是否被认为是不好的做法?

intellij-idea - 无法在intellij idea下运行和调试groovy测试

Groovy 的 @TypeChecked 或 @Builder + IntelliJ IDEA = false 错误提示。这是一个错误吗?

jQuery 在each() 和自定义函数方面遇到麻烦

java - “找不到或加载主类”是什么意思?