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
会告诉你类型。