Java:通过引用Collection来克隆任意集合

假设您在方法中有一个类型为 java.util.Collection的引用,并且不能说在运行时它将指向哪个java.util.Collection的实现,那么可以克隆Collection吗?

我想实现一个通用的方法,它将过滤任何给定类型的集合.因此,该方法将使用java.util.Collection作为输入.然而,除此之外,我不想修改原始集合,所以我想克隆收集.

解决方法

我看到三个选项:

>依赖于集合自己的克隆方法(假设它实现了Cloneable),然后删除不需要的元素.编辑:正如在评论和其他答案中指出的那样,clone()不是公开的,因此是不可访问的.>请求调用者提供一个空集合,以在源和目标之间复制目标元素.>定义一个工厂界面来创建一个空集合,并要求调用者提供一个工厂实现.然后在源和目的地之间复制目标元素.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...