Java程序从二维数组创建DefaultTableModel

Java Program to create DefaultTableModel from two dimensional array

DefaultTableModel是TableModel的实现,该实现使用Vector的Vector存储单元格值对象。 首先,为行和列创建一个二维数组-

1
2
3
4
5
6
DefaultTableModel tableModel = new DefaultTableModel(new Object[][] {
 {"India","Asia" }, {"Canada","North America" }, {"Singapore","Asia" },
 {"Malaysia","Asia" }, {"Philippins","Asia" }, {"Oman","Asia" },
 {"Germany","Europe" }, {"France","Europe" }
},
new Object[] {"Country","Continent" });

上面的"国家"和"大陆"是列。 现在,将上述行和列设置为JTable-

1
JTable table = new JTable(tableModel);

以下是从二维数组创建DefaultTableModel的示例-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package my;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class SwingDemo {
 public static void main(String[] argv) throws Exception {
   DefaultTableModel tableModel = new DefaultTableModel(new Object[][] {
    {"India","Asia" }, {"Canada","North America" }, {"Singapore","Asia" },
    {"Malaysia","Asia" }, {"Philippins","Asia" }, {"Oman","Asia" },
    {"Germany","Europe" }, {"France","Europe" }
   },
   new Object[] {"Country","Continent" });
   JTable table = new JTable(tableModel);
   Font font = new Font("Verdana", Font.PLAIN, 12);
   table.setFont(font);
   table.setRowHeight(30);
   JFrame frame = new JFrame();
   frame.setSize(600, 400);
   frame.add(new JScrollPane(table));
   frame.setVisible(true);
 }
}

输出量