[[0101, 初始化,显示], [010101, 预置信息,显示], [010102, 基本属性维护, 显示]]
这样的Vector怎样转化为
Object[][] p={{0101, 初始化,显示},{010101, 预置信息,显示},{010102, 基本属性维护, 显示}}
呢?

解决方案 »

  1.   

    楼主说的这个意思?
    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 + ", ");
    }
    }
    }
    }
      

  2.   

    ***** 可以直接转位对象数组的*********
    例如: 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 的意图 请谅解 我只是想提供一种解决问题的思想!