Allora, questo è il programma:

codice:
import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.JScrollPane;
import javax.swing.table.AbstractTableModel;

public class TestTable extends JFrame
{
	private int[][] structure = new int[10][10];
	
	public TestTable()
	{
		super ("Test Table");
		setSize (400, 300);
		setLocationRelativeTo (null);
		setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
		
		for (int i = 0; i < 10; i++)
			for (int j = 0; j < 10; j++)
				structure[i][j] = i * j;
		
		JTable table = new JTable
		(
			new AbstractTableModel()
			{
				public int getColumnCount() { return 10; }
				public int getRowCount() { return 10; }
				public boolean isCellEditable (int row, int col) { return true; }
				public void setValueAt (Object aValue, int rowIndex, int columnIndex) { structure[rowIndex][columnIndex] = ((Integer) aValue).intValue(); fireTableCellUpdated (rowIndex, columnIndex); }
				public Object getValueAt (int row, int col) { return structure[row][col]; }
				public String getColumnName (int column) { return "Nome"; }
			}
		);
		
		add (new JScrollPane (table));
		
		setVisible (true);
	}
	
	public static void main (String[] args)
	{
		new TestTable();
	}
}
Ma quando modifico una cella e premo invio, viene lanciata una ClassCastException... perchè? VVoVe: