1) your TableModel not complete, I skip a lot there or the required methods for JTable's life_cycle, starting with TableHeader , etc.
2), since there are many AbstactTableModels based on HashMap, I would suggest returning the type of arrays implemented directly in the API
Vector<Vector<Object or String>> data; String[][] or Object[][]
instead
ArrayList<ArrayList<String>> data;
simple explanations are that XxxList returns a column, and Vector or String [] returns a string
3) I would suggest using DefaultTableModel directly, then you will never have to solve duplicates or missing columns / rows
mKorbel
source share