私はJTableを含むプロジェクトに取り組んでおり、そのプロジェクトで並べ替えとフィルタリングの操作を実行しています。並べ替えとフィルタリングの部分は終了しました。古いテーブルの現在のビューから新しいテーブルを作成できるようにしたいと思います。
たとえば、古いテーブルに特定のフィルターを適用すると、一部の行がフィルターで除外されます。新しいテーブルでこれらの除外された行は必要ありません。新しい行インデックスをモデルインデックスに変換し、セル値を新しいテーブルのモデルに手動で追加できると思いましたが、これを行う他の効率的な方法があるかどうか疑問に思いました。
以下は私がやったことです:
//this code block will print out the rows in current view
int newRowCount = table.getRowCount();
int newColumnCount = table.getColumnCount();
for (int i = 0; i < newRowCount; i++) {
for (int j = 0; j < newColumnCount; j++) {
int viewIndex = table.convertRowIndexToModel(i);
String value = (String) model.getValueAt(viewIndex, j);
System.out.print(value + "\t");
}
System.out.println();
}