时髦的列表文字是 ArrayLists 还是 LinkedLists



是groovy的文字列表,例如 ['foo','bar','baz']由 ArrayList(动态数组(或 LinkedList 支持?在不同情况下使用一个而不是另一个时,有性能优势。

相关:有没有办法在运行时在 groovy 中找到变量的类型,类似于 JavaScript 的 typeof 运算符?

查看对象上的类,看看它是什么:

groovy:000> [].class
===> class java.util.ArrayList

使用 instanceof 检查其类型,就像在 Java 中一样:

groovy:000> [] instanceof ArrayList
===> true

它告诉您对象是 ArrayList 还是 ArrayList 的子类。

或者测试它的类:

groovy:000> [].class == ArrayList
===> true

它告诉您对象的具体类是否为 ArrayList。

除非指定,否则它会将其创建为ArrayList。 您可以通过def myList = [] as LinkedList或直接实例化来指定链表def myLinkedList = new LinkedList()

myList.getClass().name会告诉你类型。

最新更新