я не понимаю, почему это дает мне исключение в класс ролях:ArrayList метод ToArray класс литая исключение
List<String> names = new ArrayList<String>();
for (ApplicationInfo app : apps) {
names.add("" + app.loadLabel(packageManager));
}
return (String[]) names.toArray();
Бревно:
01-23 16:56:18.746: E/AndroidRuntime(4027): Caused by: java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.String[]
, но я четко определен names
к a) String
, а не Object
** EDIT:
oh wait, ладно, я вижу в API, он возвращает массив объектов. как я мог сделать это, не делая:
List<String> names = new ArrayList<String>();
for (ApplicationInfo app : apps) {
names.add("" + app.loadLabel(packageManager));
}
String[] list = new String[names.size()];
return names.toArray(list);
и создание нового массива каждый раз?
вы можете цикл в списке массива и нажимной строки в массиве и возвращать его –