首先ArrayList和Vector在功能上基本上是一样的,他们的区别就是ArrayList线程没用同步,而Vector的方法是线程同步的,所以Vector效率要低些。现在回到楼主的问题上,ArrayList和Iterator是可以用的,但最终都要转换为Enumeration的对象。转换事例如下:
//将ArrayList集合转换成Enumeration,假设存储流对象的集合是al
final Iterator<BufferedInputStream> it = al.iterator();
Enumeration<BufferedInputStream> en = new Enumeration<BufferedInputStream>() //匿名内部类
{
public boolean hasMoreElements()
{
return it.hasNext();
}
public BufferedInputStream nextElement()
{
return it.next();
}
};//通过方式就可以获取Enumeration的一个子类对象,这样就可以把这个对象传递给SequenceInputStream构造方法的参数。 |