[[0101, 初始化,显示], [010101, 预置信息,显示], [010102, 基本属性维护, 显示]]
这样的Vector怎样转化为
Object[][] p={{0101, 初始化,显示},{010101, 预置信息,显示},{010102, 基本属性维护, 显示}}
呢?
这样的Vector怎样转化为
Object[][] p={{0101, 初始化,显示},{010101, 预置信息,显示},{010102, 基本属性维护, 显示}}
呢?
import java.util.*;
public class Test26 {
public static void main(String[] args) {
Vector v1 = new Vector();
v1.add("0101");
v1.add("初始化");
v1.add("显示");
Vector v2 = new Vector();
v2.add("010101");
v2.add("预置信息");
v2.add("显示");
Vector v3 = new Vector();
v3.add("010102");
v3.add("基本属性维护");
v3.add("显示");
Vector v = new Vector();
v.add(v1);
v.add(v2);
v.add(v3);
System.out.println(v);
Object[][] array = new Object[v.size()][];
for(int i=0; i<v.size(); i++) {
array[i] = ((Vector)v.get(i)).toArray();
}
for(Object o : array) {
for(Object o1 : (Object[])o) {
System.out.print(o1 + ", ");
}
}
}
}
例如: v 是一个[[0101, 初始化,显示], [010101, 预置信息,显示], [010102, 基本属性维护, 显示]]集合
可以这样转换Object[] obj = v.toArray();//转换为一个Object数组 对象数组里的元素是集合
for (int i = 0; i < obj.length; i++) {
System.out.println(obj[i].toString());//输出的结果是集合的内容 如:[0101, 初始化, 显示] 这种形式
}
//如果 在想把 结合里面的对象再次输出的话 可以在改写一下:
for (int i = 0; i < obj.length; i++) {
//System.out.println(obj[i].toString());
Vector vt= (Vector) obj[i];
for (int j = 0; j <vt.size(); j++) {
System.out.println(vt.get(j));
}
}综上所述: 集合 的toArray() 方法可以装换为 Object数组
而数组的元素有可以是集合 那么这个数组 就相当与一个 二维数组了 或者说可以带到二维的效果。所以 一个toArray()方法就可以解决问题了 也许我的方法违背了 lz 的意图 请谅解 我只是想提供一种解决问题的思想!