关于Vector的用法问题
能不能向Vector变量中添加Vector类型的元素
例如Vector vector=new Vector();
Vector tmpVector=new Vector();
tmpVector.addElement( 'a ');
tmpVector.addElement( 'b ');
vector.addElement(tmpVector);
能不能想上面这样使用,在取出其中的元素的时候该怎么用呢
望高手指教
------解决方案--------------------一楼正解。
但JDK1.5(即5.0)以后最好使用范型来解决,即像Vector等集合类对象指定元素的类型。比如:
Vector <Vector> vector=new Vector <Vector> ();
Vector <String> tmpVector=new Vector <String> ();
tmpVector.addElement( "a ");
tmpVector.addElement( "b ");
vector.addElement(tmpVector);
这样,就很清楚的知道vector存储的是元素是Vector类型的,而tmpVector存储的元素是String类型。
取的时候可以直接写:Vector v = vector.get(0);而不用进行类型转换,保证的类型安全。当然,如果这时候你把vector.get(0)赋值给其他类型的对象,编译就不会通过。
------解决方案--------------------Vector tmpVector=new Vector();
tmpVector.addElement( 'a ');
tmpVector.addElement( 'b ');
vector.addElement(tmpVector);
//嵌套迭代输出
for(Object obj: vector){
Vector v=(Vector)obj;
for(Object object : v){
System.out.println(object);
}
}