有 Java 编程相关的问题?

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

java如何在jtable的所有行中循环

我试图循环一个jTable中列中的所有行,现在我可以让它循环一个列,但它只给我前5个值,还给我一个奇怪的输出

代码如下:

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // Button to Start
    Object[] columnData = new Object[jTable1.getColumnCount()];
    Object[] rowData = new Object [jTable1.getRowCount()];
    for (int i = 0; i < jTable1.getColumnCount(); i++) {
    columnData[i] = jTable1.getValueAt(i, 4);
    System.out.println(Arrays.toString(columnData));
    }

以下是输出:

enter image description here


共 (1) 个答案

  1. # 1 楼答案

    我认为您正在使用列迭代作为代码中的行号jTable1.getValue(i, 4)按该顺序具有参数行、列。如果只有五列,则只能得到五个值

    尝试将循环更改为通过行计数,然后选择第5列

    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // Button to Start
        Object[] columnData = new Object[jTable1.getRowCount()];  // One entry for each row
        Object[] rowData = new Object [jTable1.getRowCount()];
        for (int i = 0; i < jTable1.getRowCount(); i++) {  // Loop through the rows
            // Record the 5th column value (index 4)
            columnData[i] = jTable1.getValueAt(i, 4);  
         }
         System.out.println(Arrays.toString(columnData));