Список Java-списка в строку [] - PullRequest
0 голосов
/ 06 марта 2012

Как мне конвертировать

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

Ответы [ 2 ]

8 голосов
/ 06 марта 2012

Вы должны использовать list.toArray(new String[list.size()]).Object[] не совместим по типу с String[], несмотря на то, что каждый элемент в Object[] является String.Кроме того, вам следует рассмотреть возможность указания параметра типа вашего List для обеспечения безопасности типов.

0 голосов
/ 06 марта 2012

В основном вам нужно использовать

String profArr = list.toArray (<массив строк> (размер))

...