java - JTable 3 字段数组列表

标签 java arraylist jtable

我正在尝试将值添加到Jtable,这些值是从arrayList中获取的, 你是怎么做到的

我尝试制作Object[][] data;并将其填充到循环内,但它不起作用,您如何解决这个问题?

String[] columns = {"Field String","Field Double"," Field Double"};
Object[][] data;

Iterator<Node> itr = arrayList.iterator();
while (itr.hasNext()) {
   Node el    = itr.next();
   double a   = el.getval();
   data[i][1] = el.getstring();
   data[i][2] = a;
   data[i][3] = a*4;
   i++;
}


JFrame frame = new JFrame("Title ");
JTable tablE = new JTable(data, columnas);
JPanel panel = new JPanel();

panel.add(table);
frame.add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500, 500);
frame.setVisible(true);

如何在 while 循环内填充“数据”?

最佳答案

使用 DefaultTableModel 并使用其 addRow(Object[]) 或 addRow(Vector) 方法添加数据行。将其设置为 JTable 的模型。 API 和 JTable 教程可以帮助您入门。

例如,

  ArrayList arrayList = new ArrayList();

  String[] columns = {"Field String","Field Double"," Field Double"};
  DefaultTableModel model = new DefaultTableModel(columns, 0);

  for (Object item : arrayList) {
     Object[] row = new Object[3];
     //... fill in row with info from item

     model.addRow(row);
  }

  JTable table = new JTable(model);

这演示了如何使用 for 循环执行此操作,但 while 循环也类似。

关于java - JTable 3 字段数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5453412/

相关文章:

java - 如何从 Android 的评级栏中删除填充?

java - 当我读取文本文件时如何跳行?

java - 如何从数据库中检索数组

java - 当光标指向特定行时,如何获取 JTable 中的行和列?

java - 在 Java 中创建 RESTful API 服务器需要什么?

java - 如何用四线打印 1 到 10

java - 在 JComboBox 中显示 ArrayList<Object> 中对象的字符串

java - JTable 和构造函数参数

swing - JTable setCellRenderer 将文本字段格式化为最新?

java - Android - 如何将文档打包到应用程序中