在 Groovy 中动态添加元素到 ArrayList

2023-12-21

我是 Groovy 的新手,尽管阅读了很多有关此的文章和问题,但我仍然不清楚发生了什么。 据我目前的了解,当您在 Groovy 中创建一个新数组时,底层类型是 Java ArrayList。这意味着它应该是可调整大小的,您应该能够将其初始化为空,然后通过 add 方法动态添加元素,如下所示:

MyType[] list = []
list.add(new MyType(...))

可以编译,但在运行时失败:没有方法签名:[LMyType;.add() 适用于参数类型:(MyType) 值:[MyType@383bfa16]

执行此操作的正确方法或正确类型是什么?


Groovy 的方法是

def list = []
list << new MyType(...)

它创建一个列表并使用重载的leftShift http://docs.groovy-lang.org/2.4.3/html/groovy-jdk/java/util/Collection.html#leftShift(java.lang.Object)附加项目的运算符

看看 Groovy列表上的文档 http://groovy-lang.org/groovy-dev-kit.html#_working_with_collections有很多例子。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Groovy 中动态添加元素到 ArrayList 的相关文章

随机推荐