说明jList1.getSelectedValues()方法返回的并不是string数组。当然转换不了

解决方案 »

  1.   

    debug一下看看得到的具体是什么类型的数组,然后根据你的实际要求来转换这类型的数据成String,比如传回来个XXX对象,需要用它的xxx属性,就直接转换成XXX类型数据再得到它的xxx属性。
      

  2.   

    标题写错了应该是 “如何将Object[] 转换成 String[]?”
      

  3.   

    Object[] oa = jList1.getSelectedValues();String[] sa = Arrays.copyOf(oa, oa.length, String[].class);
      

  4.   

    List list = new ArrayList();
    String[] strArray = (String[]) list.toArray(new String[list.size()]);
    这样即可 不要先转为Object[]了再转String[] 不能转的 除非再次作遍历 重新添加到String数组
      

  5.   

    这个不能直接转,你这样返回的话只能是把类型信息全部丢了
    你可以遍历一次,重新赋给一个新的数组
    或者用Arrays里面或Collections里面的工具方法复制一份
    不过最终还是建议用集合类的时候还是添加泛型限制,如<String>
    这样就不会丢失类型信息,就不用等于需要的时候再找方法转了
    这样转的话还容易出现类型转换异常,不是好方法