java中 如何从Vector中取出数组

我写的代码 ,高手指点
public class Mymain
{
public static void main(String args [])
{
int data1[] = {1,2,3};
int data2[] = {4,5,6};
int data3[] = {7,8,9};

Vector v = new Vector();

v.addElement(data1);
v.addElement(data2);
v.addElement(data3);

for(int i = 0;i<v.size();i++)
{
System.out.println(v.elementAt(i));
}
要求遍历答应出来

Vector是一个容器,可以容纳不同类型的对象,数组也可以。

比如有个int型数组: int data1[] = { 1, 2, 3 };

放入vector:v.addElement(data1);

然后可以这么取:

 for(int integer:(int [])v.elementAt(i) ){ 

   System.out.println(integer);

  }

完整的例子如下:

import java.util.Vector;
class Test{
public static void main(String args[]) {
   //定义整形数组:
 int data1[] = { 1, 2, 3 };
 int data2[] = { 4, 5, 6 };
 int data3[] = { 7, 8, 9 };

 //定义一个vector容器对象
 Vector v = new Vector();
  //向容器中放数组
 v.addElement(data1);
 v.addElement(data2);
 v.addElement(data3);
  //开始循环迭代数组对象
 for (int i = 0; i < v.size(); i++) {
  System.out.println("----------");
  //由于没有用泛型,这里需要类型强制转化,转换为int[]才可以遍历出来
  for(int integer:(int [])v.elementAt(i) ){ 
   System.out.println(integer);
  }
 }
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-08
1.方法:
public final synchronized void setsize(int newsize);
此方法用来定义向量的大小,若向量对象现有成员个数已经超过了newsize的值,则超过部分的多余元素会丢失。
2.程序中定义Enumeration类的一个对象Enumeration是java.util中的一个接口类,
在Enumeration中封装了有关枚举数据集合的方法。
在Enumeration提供了方法hasMoreElement()来判断集合中是否还有其他元素和方法nextElement()来判断集合中是否还有其他元素和方法nextElement()来获取下一个元素。利用这两个方法,可以依次获得集合中的元素。
3.Vector中提供方法:
public final synchronized Enumeration elements();
此方法将向量对象对应到一个枚举类型。java.util包中的其他类中也都有这类方法,以便于用户获取对应的枚举类型。
第2个回答  推荐于2017-09-08
可以运行啊。。
-------------
import java.util.Vector;

class AA {
public static void main(String args[]) {
int data1[] = { 1, 2, 3 };
int data2[] = { 4, 5, 6 };
int data3[] = { 7, 8, 9 };

Vector v = new Vector();

v.addElement(data1);
v.addElement(data2);
v.addElement(data3);

for (int i = 0; i < v.size(); i++) {
System.out.println( ((int[])v.elementAt(i))[1] );
//把你的元素取一个出来打印,也可以打印,没有问题啊..
//没用范型 ..要强制转换。
}
}
}
-----------------
一般如果不是需要同步的话,不要用vector , 用list...
--------------
数组在啊,遍历有问题吗?

import java.util.Vector;

class Dog {
public static void main(String args[]) {
int data1[] = { 1, 2, 3 };
int data2[] = { 4, 5, 6 };
int data3[] = { 7, 8, 9 };

Vector v = new Vector();

v.addElement(data1);
v.addElement(data2);
v.addElement(data3);

for (int i = 0; i < v.size(); i++) {
System.out.println("----------");
for(int integer:(int [])v.elementAt(i) ){
System.out.println(integer);
}

}
}
}本回答被提问者采纳