我将如何转换
List list= new ArrayList();
到
String [] profArr= {};
我尝试过做
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
答案 0 :(得分:8)
您需要使用list.toArray(new String[list.size()])
。尽管Object[]
中的每个元素都是String[]
,但Object[]
与String
的类型不兼容。此外,您应该考虑指定List
的类型参数以保持类型安全。
答案 1 :(得分:0)
基本上你需要使用
String profArr = list.toArray(&lt; String array&gt;(size))