我有这个方法
public <E> Collection<E> toCollection(E[] a)
我不知道E[]
是什么意思?您将如何向此方法发送ArrayList
?
提前致谢。
最佳答案
E[]
表示该函数需要一个 E
类型的对象数组。 E
是泛型类型。
请参阅here了解更多信息。
您无法将 ArrayList
发送到该方法,因为 ArrayList
不是 Array
。它也已经是一个Collection
,因此将该方法与 ArrayList 一起使用是没有意义的。
为什么它是一个集合?因为它实现 Collection界面。 如果该方法的目的是将数组转换为集合,那么您会发现将 ArrayList 转换为数组以便您可以通过那里发送它是一个坏主意。
不过,如果您已经知道 E 具体是什么(当您运行程序时它将是什么类型),您当然仍然可以将 arraylist 转换为数组并通过该方法发送它.
关于java - 在通用 Collection 方法中发送 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60219150/