Olá tenho as seguintes classes:
package org.wsi.modelo;
import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;
public class SimpleTableModel extends AbstractTableModel {
private ArrayList linhas = null;
private Object[] colunas = null;
public SimpleTableModel(ArrayList dados, Object[] colunas) {
setLinhas(dados);
setColunas(colunas);
}
public int getRowCount() {
return getLinhas().size();
}
public int getColumnCount() {
return getColunas().length;
}
public Object getValueAt(int rowIndex, int columnIndex) {
String[] linha = (String[]) getLinhas().get(rowIndex);
return linha[columnIndex];
}
public ArrayList getLinhas() {
return linhas;
}
public void setLinhas(ArrayList linhas) {
this.linhas = linhas;
}
public Object[] getColunas() {
return colunas;
}
public void setColunas(Object[] colunas) {
this.colunas = colunas;
}
}
package org.wsi.viewer;
import java.util.ArrayList;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
import org.wsi.modelo.SimpleTableModel;
public class MyTableViewer {
public void createJTable(JTable value) {
ArrayList dados = new ArrayList();
Object[] colunas = new Object[]{"Estado", "Cidade"};
dados.add(new String[]{"SP", "São Paulo"});
dados.add(new String[]{"BA", "Salvador"});
dados.add(new String[]{"RJ", "Rio de Janeiro"});
dados.add(new String[]{"BA", "Itabuna"});
dados.add(new String[]{"BA", "Ilhéus"});
SimpleTableModel modelo = new SimpleTableModel(dados, colunas);
value.setModel(modelo);
value.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
}
package org.wsi.app;
import org.wsi.viewer.MyTableViewer;
public class MyFramePrincipal extends javax.swing.JFrame {
public MyFramePrincipal() {
initComponents();
new MyTableViewer().createJTable(jtabCidade);
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MyFramePrincipal().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jtabCidade;
// End of variables declaration
}
na hora que eu rodo o programa sai assim:

com os títulos da coluna com A e B
Por favor alguém poderia me ajudar a esclarecer isso?