Java列表到字符串[]

Java列表到字符串[],java,string,list,arraylist,Java,String,List,Arraylist,我该如何转换 List list= new ArrayList(); 到 我已经试过了 profArr = list.toArrary() and profArr = (String [])list.toArrary() 我得到以下错误: java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String; 我也试过 String [] profArr= (String

我该如何转换

List list= new ArrayList();

我已经试过了

profArr = list.toArrary() 

    and

profArr = (String [])list.toArrary()
我得到以下错误:

java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
我也试过

String [] profArr= (String [])list.toArray(new String[0]);
我得到一个错误:请求的资源()不可用

以下是我创建列表的方式:

static List decode(int x)
    {
        List power2List = new ArrayList();
        if (x < 0) 
            throw new IllegalArgumentException("Decode does not like negatives");
        while (x > 0)
        {
            int p2 = Integer.highestOneBit(x);
            x = x - p2;
            power2List.add(p2);
        }
        return power2List;   
    }

List list= new ArrayList();
list= decode(rset.getInt("favprofs")); //rset being a result set which pulls one int
静态列表解码(int x)
{
List power2List=new ArrayList();
if(x<0)
抛出新的IllegalArgumentException(“解码不喜欢负片”);
而(x>0)
{
int p2=整数。highestOneBit(x);
x=x-p2;
power2List.add(p2);
}
返回power2List;
}
列表=新的ArrayList();
列表=解码(rset.getInt(“favprofs”)//rset是一个抽取一个int的结果集

您需要使用
list.toArray(新字符串[list.size()])
对象[]
字符串[]
类型不兼容,尽管
对象[]
中的每个元素都是
字符串。此外,还应考虑指定<代码>列表的类型参数,以保持类型安全性。

基本上您需要使用

String profArr=list.toArray((大小))


你最初的工作清单是什么?它是否实现了
toString()
方法?关于“请求的资源()不可用”的消息与此代码无关;有一次发生了一些奇怪的事情。您也尝试过list.toArray(新字符串[0])这段代码甚至无法编译
list.toArray
返回一个数组,而不是
字符串
。我的意思是这个数组似乎已经作为答案列表提供。toArray(新字符串[list.size]),在我的例子中,我得到的是:请求的资源()不可用。嗯,我想知道是不是出了什么问题then@user975044如果看不到更多的代码或完整的错误消息,我只能假设其他错误。
static List decode(int x)
    {
        List power2List = new ArrayList();
        if (x < 0) 
            throw new IllegalArgumentException("Decode does not like negatives");
        while (x > 0)
        {
            int p2 = Integer.highestOneBit(x);
            x = x - p2;
            power2List.add(p2);
        }
        return power2List;   
    }

List list= new ArrayList();
list= decode(rset.getInt("favprofs")); //rset being a result set which pulls one int