У меня возникли проблемы с использованием метода toArray
класса ArrayList
. Мне нужно поставить содержимое ArrayList
, vecPersonnages
, в JList
, listeObjets
, и я хотел бы сделать это, используя метод ArrayList#toArray
. Мне удалось заставить его работать, поместив значения моего списка на вкладку, а затем поместив эту вкладку в JList
.Ввод ArrayList в JList с использованием метода ArrayList # toArray
Я проверял Google на помощь, но все, что я нашел, оказалось неработоспособным. У меня есть метод toString
в моих классах, однако у меня нет метода toString
в классе, в котором я использую свой JList
.
Это, как я объявил мои классы:
private JList<Personnage> listeObjets = null;
private ArrayList<Personnage> vecPersonnages = null;
Ниже приведен код, в котором я пытаюсь добавить содержание моего ArrayList
к JList
вместе с некоторыми вещами, которые я пробовал, отметил в комментарии:
Personnage[] tabPerso = new Personnage[vecPersonnages.size()];
for (int i = 0; i < vecPersonnages.size(); i++) {
tabPerso[i] = vecPersonnages.get(i);
}
listeObjets.setListData(tabPerso);
//listeObjets.setListData(vecPersonnages.toArray());
//listeObjets.setListData((Personnage[]) vecPersonnages.toArray());
/*the last line gives me a ClassCastException (java.lang.Object
cannot be cast to personnage.Personnage)*/
спасибо! Оно работало завораживающе! – user2249860
@ user2249860 Добро пожаловать. Если это ответит на ваш вопрос, проверьте правильную метку, чтобы этот ответ был правильным. –