Arrays 将项目从ArrayList添加到Array并显示在JLList中
我正在尝试将Arrays 将项目从ArrayList添加到Array并显示在JLList中,arrays,arraylist,jlist,Arrays,Arraylist,Jlist,我正在尝试将ArrayList中的所有项添加到另一个类中的String[]数组中,但我没有这样做。我试过很多方法,但都没有用。另一个类中的字符串[]数组不显示任何项。因此,我无法将数组添加到JList。我不知道该怎么办。这是我的密码: 公共类bookbook扩展JFrame{ java.util.List timeList=new ArrayList(); 公共图书{ 选择time.timeArr=新字符串[timeList.size()]; timeList.toArray(选择time.t
ArrayList
中的所有项添加到另一个类中的String[]
数组中,但我没有这样做。我试过很多方法,但都没有用。另一个类中的字符串[]数组不显示任何项。因此,我无法将数组添加到JList
。我不知道该怎么办。这是我的密码:
公共类bookbook扩展JFrame{
java.util.List timeList=new ArrayList();
公共图书{
选择time.timeArr=新字符串[timeList.size()];
timeList.toArray(选择time.timeArr);
}
}
您正在直接修改JList
数组,如文档所述,这将导致未定义的行为。尝试以下代码:将函数updateList
添加到类SelectTime
中,以使用适当的方法执行此操作
public class bookbook extends JFrame{
java.util.List<String> timeList = new ArrayList<String>();
public bookbook(){
String [] timeArr = new String[ timeList.size() ];
timeList.toArray(selectTime.timeArr);
selectTime.updateList(timeArr);
}
}
这真的很有效!JList现在充满了ithems。谢谢你的帮助!
public class SelectTime extends JFrame{
String[] timeArr = {};
private JList jlstTime = new JList(timeArr);
public SelectTime(){
jpTicket.add(jlstTime);
}
public void updateList(String [] array)
{
jlstTime.setListData(array);
jlstTime.invalidate();
}
}