Object[] arr = new String[array.size()];    
arr = array.toArray();
类型不匹配,array.toArray()返回的是Object[] 

解决方案 »

  1.   

    String[] arr = new String[array.size()];使用arr = (String[])array.toArray();是不行的,应该使用:
    array.copyInto(arr);
      

  2.   

    先谢谢楼上两位.
    to:sunjiujiu 我知道使用array.copyInto()这个方法可以,但是我现在真正要用的不是
    Vector而是ArrayList,而ArrayList并没有copyInto()这个方法,只能用toArray()这个方法,
    由于考虑到Vector大家都比较熟悉,ArrayList可能用的不多,所以我就把它改为Vector来向大家请教,希望大家能再给出相应当解决办法!谢谢!
      

  3.   

    ArrayList array = new ArrayList();
    array.add("aa");
    array.add("bb");
    array.add("cc");
    String[] arr = new String[array.size()];
    array.toArray(arr);
    for (int i = 0; i < arr.length; i++) {
        System.out.println(arr[i]);
    }
      

  4.   

    先谢谢ender
    但是我的实际应用是在一个方法中返回一个数组,所以不想通过循环.
    而是直接使用arr = (String[])array.toArray();这样的方法获得一个字符串数组,
    所以请大家在提出合适当解决之道.谢谢!
      

  5.   

    倒!你有没看清楚我的程序啊?
    和循环有什么关系的……
    array.toArray(arr);这句就是直接把array的值赋给数组arr……
      

  6.   

    呵呵!确实是没有看见!不好意思了,其实这个方法我也知道,不过我的概念上理解错了,
    一直以为Object[]经过造型后就可以变成String[],其实这是行不通的,它们完全就是两种
    不同的类型.再次谢谢ender!
      

  7.   

    String[] arr = new String[array.toArray()]