2016-07-29 62 views
0

我正在使用JDBC在Java中運行SQL查詢。我想將查詢的結果存儲在一個數組列表中,以便我可以將數據顯示在某種圖形中。我得到的打印行數與columnCount相同。這是我的代碼。在arraylist中顯示重複的結果java

ArrayList <String[]> result = new ArrayList<String[]>(); 
int columnCount = rset.getMetaData().getColumnCount(); 
     if(rset!=null) 
     { 
      while(rset.next()) 
      { 
       found=true; 

       String[] row = new String[columnCount]; 
       for (int i = 0; i < columnCount; i++) { 
        row[i] = rset.getString(i + 1);      
        row[i] = rset.getString("Date") + " " 
          + rset.getString("Hour"); 
        System.out.println(row[i]); 
       } 
       result.add(row); 
     } 
+0

它似乎你的代碼需要調試! –

+0

爲什麼'String []'?對於一堂課不是更好嗎? 'class Row {private String value;私人日期日期;/* getters和setters * /}'。爲什麼還要爲每列獲取日期和小時? –

回答

1

您的第二個row[i]重寫了該列的值。只需刪除它,你會看到你的記錄:

... 
for (int i = 0; i < columnCount; i++) { 
    row[i] = rset.getString(i + 1);      
} 
System.out.println(Arrays.toString(row)); 
result.add(row); 
...