有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从多个数组列表创建JTable

在一个叫做数据库的类中;有三个{}{}名性别ArrayList中的元素是并行的。例如,姓氏(1)将是(1)的姓氏

我想知道如何在JTable中显示这些ArrayList。所有ArrayList显示在不同的列中


共 (2) 个答案

  1. # 1 楼答案

    The elements in the ArrayLists are parallel.

    为什么??创建包含这3个属性的自定义Person。然后将Person对象添加到ArrayList。然后您可以创建一个适当的TableModel来显示Person对象

    您可以查看Row Table Model以获得更一般的解决方案。{}示例代码将让您了解如何为Person类定制模型

    也可以使用Swing教程中的示例创建完全自定义的PersonTableModel

  2. # 2 楼答案

    • 使用DefaultTableModel
    • 把那个模型放到桌子上
    • 使用addRowObject[]Vector参数添加到模型中

    String[] columnNames = {"First Name", "Surname", "Gender"};
    DeafultTableModel model = new DefaultTableModel(columnNames, 0);
    JTable table = new JTable(model);
    

    然后添加您的列表

    List<String> firstnames = new ArrayList<>();
    List<String> surnames = new ArrayList<>();
    List<String> genders = new ArrayList<>();
    
    for (int i = 0; i < firstname.size(); i++){
        Object[] row = { firstnames.get(i), suenames.get(i), genders.get(i) };
        model.addRow(row);
    }
    

    见:DefaultTableModel javadocHow to use Tables tutorial