# JTable - getRowCount() funktioniert nicht



## Guest (23. Nov 2008)

Ich verwende folgenden Code in einer eigenen Methode, um alle Zeilen aus einer JTable zu entfernen (zumindest sollte es das...):


```
DefaultTableModel model = (DefaultTableModel) tableEquipment.getModel();
for(int i = 0; i < model.getRowCount(); i++)
{
    	model.removeRow(i);
}
tableEquipment.setModel(model);
```

Leider liefert getRowCount() einen falschen Wert. Z.B. wenn es 6 Einträge gibt, dann gibt die Methode 3 zurück. Das heißt, ich muss diese Löschen-Methode mehrmals hintereinander aufrufen, bis endlich alle Zeilen entfernt wurden.
Was mache ich falsch?


----------



## musiKk (23. Nov 2008)

Ich habe keine Ahnung, wie das genau funktioniert, aber ich hab mal ein wenig damit rumgespielt und festgestellt, dass das Model leer ist, wenn man es von hinten löscht. Also

```
for(int i=model.getRowCount()-1; i>=0; i--) {
	model.removeRow(i);
}
```
Aber keine Ahnung, ob das überhaupt die richtige Herangehensweise ist. Mich wundert schon, dass dein Beispiel keine ArrayIndexOutOfBoundsException geworfen hat. getRowCount() ist am Anfang ja sechs. Wenn du aber die nullte Row gelöscht hast, dann gibt es die fünfte nicht mehr usw...


----------



## Gast (24. Nov 2008)

Du meine Güte, wie dumm von mir...
Vielen Dank!


----------

