2012-12-25 97 views

回答

0

優選的,和健壯的,方法是使用的TableModel。使用JTable.getModel()來獲取它。 一旦你有了TableModel,你可以使用它的API知道它在任何位置使用getValueAt(int rowIndex,int columnIndex)具有的值,然後將它存儲在List中。

+0

是的,這是我一直在使用的,但我希望每一行都被存儲爲一個在arralist。他們都是字符串。 – KyleTheSnake

0

如果您正在使用在桌子上使用的任何對象,然後遍歷剛剛一行一行,並得到每一個對象,並將其存儲在列表存儲在表中的數據。

例子:這是當你使用一個列表來存儲數據。

List<Object> list = new ArrayList<Object>; 

for(int row = 0; row < table.getRowCount(); row++) { 
    for(int column = 0; column = table.getColumnCount(); column++) { 
     list.add(table.getValueAt(row, column)); 
    } 
} 

最後,您將獲得列表中的所有對象。

編輯:

由於每一行是CustomObject類型的對象,我們需要每個表的值設置爲CustomObject類型的對象,並將其添加到列表的每一行。

class CustomObject { 
    Object one; 
    Object two; 
} 

List<CustomObject> list = new ArrayList<CustomObject>; 

for(int row = 0; row < table.getRowCount(); row++) { 
    CustomObject object = new CustomObject(); 
    for(int column = 0; column = table.getColumnCount(); column++) { 
     switch(column) { 
      case 0: 
        object.setOne(table.getValueAt(row, column)); 
        break; 
      case 1: 
        object.setTwo(table.getValueAt(row, column)); 
        break; 
     } 
    } 
    // Store each object in the list. 
    list.add(object); 
} 
+0

謝謝我認爲這將工作,但我想將每一行轉換爲一個字符串。所以一旦它獲得了整行的值,我希望對象轉換爲一個字符串,並將該字符串存儲到數組列表中,謝謝 – KyleTheSnake

+0

謝謝但不是創建多個對象,你可以讓對象有一個對象,然後將其轉換爲一個字符串例如的ToString?因爲這是我的想法,但不知道如何實施它。謝謝 – KyleTheSnake

+0

如果將整行作爲單個對象並執行object.toString(),我可以知道它的用途嗎? AFAIK它只會打印對象參考值,爲什麼要存儲它是我的問題? – Amarnath