如何将ArrayList转换为JList对象? java

随着越来越多的用户加入聊天室,我有一个更大的ArrayList。 主JFrame有一个列表框,显示所有当前连接的用户。 但是当我尝试将arraylist传递到jframe列表时,我得到以下错误:

“JList类型中的方法setListData(Object [])不适用于参数(ArrayList)”

谢谢你的时间。

你可以简单地使用setListData(arrayList.toArray())

或者您可以编写自己的ListModel ,它由ArrayList支持,例如……

 public class ListBasedListModel extends AbstractListModel { private List data; public ListBasedListModel(List data) { this.data = data; } @Override public int getSize() { return data.size(); } @Override public T getElementAt(int index) { return data.get(index); } } 

然后你可以只做list.setModel(new ListBasedListModel(arrayList))或其他一些

有关详细信息,请查看如何使用列表

 JList myJList = new JList(arrayList.toArray()); //arrayList should be your Array List 
 JList delList = new JList(myArrayList.toArray());