java - JList ArrayList 每个对象 3 个项目

标签 java swing jlist

我有这个方法将我的 JList of days 设置为 ArrayList 中的每个 Day 对象

public void setCalender(ArrayList<Day> calender) {
    this.calender = calender;
    listDays.setListData(this.calender.toArray());
}

每天包含 3 个 period 对象。当前列表呈现为:

Day1
Day2
Day3

但是我希望用户也能够通过渲染来选择一个时期

Day1: Period1
Day1: Period2
Day1: Period3
Day2: Period1
Day3: Period2
Day3: Period3

..等等。我怎样才能实现这个目标?

最佳答案

假设您有一个像 getPeriods() 这样的方法,它返回特定日期的周期列表,您可以使用以下代码:

ArrayList<Day> calender;

ArrayList<Period> periods = new ArrayList<Period>();

for(Day d: calender)
{
   for(Period p : d.getPeriods())
   {
       periods.add(p);
   }
}
listDays.setListData(periods.toArray());

关于java - JList ArrayList 每个对象 3 个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13837702/

相关文章:

java - 字符串等于和 == 与字符串连接

java - 怎么会找不到完整文件路径的文件呢?

java - 是否可以动态更新 JTextArea?

java - 如何访问 JLIST 中的特定元素?

java - 每个 JSpinner 对象都有自己的 Model 对象吗?

java - JList 上 Transferable 和 Transferhandler 的自定义删除容器

java - 使用 Spring Boot 进行服务器端渲染 React

java - 如何在 Mac 中通过 java 运行终端命令并打印输出

java - 如何防止禁用的 JMenuItem 在被单击时隐藏菜单?

java - 2D 按钮数组 ActionListener,颜色变化?