Java 是否有一种对泛型集合类型进行操作的方法?

Java 是否有一种对泛型集合类型进行操作的方法?,java,collections,set,Java,Collections,Set,我有一种方法,可以对某种形式的收集做一些事情。但是,是否可以扩展要在其上运行该方法的集合类型的数量? 我不是说像ArrayList这样的泛型集合,而是让该方法在ArrayList、数组、集合、集合、哈希表上工作?虽然您不能直接扩展该方法以支持您提到的其他类型,但您可以从API的角度通过重载方法来实现这一点。例如,如果实现一个方法来处理所有集合: public <T> void processData(Collection<T> data) { ... } 在本例中,您使

我有一种方法,可以对某种形式的收集做一些事情。但是,是否可以扩展要在其上运行该方法的集合类型的数量?
我不是说像ArrayList这样的泛型集合,而是让该方法在ArrayList、数组、集合、集合、哈希表上工作?

虽然您不能直接扩展该方法以支持您提到的其他类型,但您可以从API的角度通过重载方法来实现这一点。例如,如果实现一个方法来处理所有集合:

public <T> void processData(Collection<T> data) { ... }
在本例中,您使用的方法与处理数组的
集合
结构的方法相同。每个不实现
集合
或数组的类型都需要另一个专门的重载方法,该方法要么将其转换为
集合
,要么更可能以对其有意义的方式处理该数据结构

最后,通过重载这些方法,可以用相同的名称调用该方法,并传入各种类型。因此,从API的角度来看,您似乎总是在调用相同的方法:

Collection<String> coll = new ArrayList<String>();
int[] arrayOfInts = new int[10];

// You can call processData on both of these types now
processData(coll);
processData(arrayOfInts);
Collection coll=new ArrayList();
int[]arrayOfInts=新的int[10];
//现在可以对这两种类型调用processData
过程数据(coll);
processData(ArrayFints);

数组不是集合Array和Hashtable不是集合。问题不清楚。你能分享一些代码吗?另一方面,一个适用于集合的方法事实上适用于ArrayList和集合。我知道它们不是集合,但我不知道如何描述它。某种形式的存储
Collection<String> coll = new ArrayList<String>();
int[] arrayOfInts = new int[10];

// You can call processData on both of these types now
processData(coll);
processData(arrayOfInts);