已定义Object data[][]={ 
 {"设备一","2011-2-3","12:10:00","3.4","2.3","正常","12"},
{"设备二","2011-2-3","12:10:00","3.4","2.3","正常","12"},  
  };
后面的程序中要实在循环中添加类似于{"设备二","2011-2-3","12:10:00","3.4","2.3","正常","12"}这样的元素,不知道怎么添加。。
各位高手指点指点啊。。  

解决方案 »

  1.   

    这样的话当然是用list方便把你的数据封装成对象然后 
    list dataList = new ArrayList...添加数据就是
    dataList .add.......
      

  2.   

    你已经将它固定了 你要用Listimport java.util.*;
    public class TestAddElement {
        public static void main(String[] args) {
    List<String[]> list = new ArrayList<String[]>();
    list.add(new String[]{"设备一","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    list.add(new String[]{"设备二","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    list.add(new String[]{"设备三","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    list.add(new String[]{"设备四","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    list.add(new String[]{"设备五","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    list.add(new String[]{"设备六","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    //可以放心大胆的继续添加
    for(int i=0; i<list.size(); i++) {
        String[] fields = (String[])list.get(i);
        System.out.println(Arrays.toString(fields));
    }

        }
    }
    /*结果:
     [设备一, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
     [设备二, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
     [设备三, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
     [设备四, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
     [设备五, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
     [设备六, 2011-2-3, 12:10:00, 3.4, 2.3, 正常, 12]
    */t
      

  3.   

    主要是我弄Object data是用来构建和填充表格的。。如下:Object data[][]={{"设备一","2011-2-3","12:10:00","3.4","2.3","正常","12"},};
    String columnNames[]={"设备","日期","时间","电压","电流","运行状态","累计故障次数"};
    JTable table=new JTable(data,columnNames);要是换成list了就不会用了。。怎么办呢?
      

  4.   

    想办法计算出行数和列数。类似下面的写法
    class DisplayDialog extends JDialog {
    Statement stmt = null;
    DisplayDialog(JFrame f , String title, ScoreManagementSystem sms , String sql, Object[] name ) {
    super(f , title);
    this.setBounds(200, 200, 400, 500);
    this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    this.setVisible(true);
    try {
    stmt = sms.conn.createStatement(
    ResultSet.TYPE_SCROLL_INSENSITIVE,// 对滚动不敏感,结果集可滚来滚去
    ResultSet.CONCUR_READ_ONLY);// 只能够读取里边的内容,
    ResultSet rs = stmt.executeQuery(sql); rs.last();// 指到定位到最后一行
    int row = rs.getRow();// 获得总行数
    rs.beforeFirst();// 定位到开始
    ResultSetMetaData rsmd1 = rs.getMetaData();// 计算字段个数
    int col = rsmd1.getColumnCount(); // 计算字段个数
    Object a[][] = new Object[row][col];
    JTable table = new JTable(a, name);
    for (int index = 0; rs.next(); index++)
    for (int j = 0; j < col; j++)
    a[index][j] = rs.getString(j + 1);
    getContentPane().removeAll();
    add(new JScrollPane(table), BorderLayout.CENTER);
    validate();
    rs.close();
    } catch (SQLException e) {
    System.out.println("SQL语句无效");
    add(new JLabel("SQL语句无效"));
    e.printStackTrace();
    }
    }

    }
      

  5.   

    也可以这样,如不需顺序,试试HashSet:
    import java.util.*;
    public class Test{
    public static void main(String[] args){
    List<List> list = new ArrayList<List>();
        list.add(Arrays.asList(new String[]{"设备一","2011-2-3","12:10:00","3.4","2.3","正常","12"}));
        list.add(Arrays.asList(new String[]{"设备二","2011-2-3","12:10:00","3.4","2.3","正常","12"}));
    System.out.println(list);

    HashSet<String[]> hs = new HashSet<String[]>();
        hs.add(new String[]{"设备一","2011-2-3","12:10:00","3.4","2.3","正常","12"});
        hs.add(new String[]{"设备二","2011-2-3","12:10:00","3.4","2.3","正常","12"});
    for(String[] h:hs)
    System.out.println(Arrays.toString(h));
    }
    }
      

  6.   

    怎么不早说呢,JTable也不是很熟悉,修修补补,终于得来段算是简单明了的JTable例子:
    import java.util.*;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;public class JTableTest {
    public static void main(String[] args) {
       JFrame frame = new JFrame("JTable测试"); 
       frame.setSize(300,250);
       Vector<String> title = new Vector<String>();
       title.add("姓名");
       title.add("学号");
       title.add("性别");
       Vector<Vector> list = new Vector<Vector>();
       Vector<String> obj1 = new Vector<String>(){{add("张三");add("1001");add("男");}};
       Vector<String> obj2 = new Vector<String>(){{add("李四");add("1002");add("女");}};
       Vector<String> obj3 = new Vector<String>(){{add("王五");add("1003");add("男");}};
       list.add(obj1);
       list.add(obj2);
       list.add(obj3);
       JTable table = new JTable(list,title);
       JScrollPane scroll = new JScrollPane(table);
       frame.add(scroll);
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       frame.setVisible(true);
    }
    }