net.sf.trauma
Class Table

java.lang.Object
  extended by net.sf.trauma.Table

public class Table
extends java.lang.Object

Klasse Table - diese Klasse bietet einfache Tabellen-Funktionalität inklusive Schnitt und Vereinigung.
Lizensierungsart: GNU LGPL (darf in kommerziellen Projekten unverändert genutzt werden).

Version:
2005.10.10
Author:
Manuel Haim

Field Summary
private  java.lang.String[][] tableStrings
          tableStrings[y][x] enthält Tabellen-Zelle (x,y).
 
Constructor Summary
Table()
           
Table(java.lang.String[][] tableStrings)
          Anlegen einer neuen Tabelle durch Übergabe eines zweidimensionalen String-Arrays.
 
Method Summary
 void addTable(Table table)
          Anhängen einer weiteren Tabelle an die aktuelle Tabelle.
static boolean[] getComplement(boolean[] b1, boolean[] b2)
          Komplementärmenge.
b1 b2 c
0 0 0
0 1 0
1 0 1
1 1 0
static boolean[] getIntersection(boolean[] b1, boolean[] b2)
          Schnittmenge.
 java.lang.String[][] getTableStrings()
          Abfrage der Tabelle als zweidimensionales String-Array.
static boolean[] getUnion(boolean[] b1, boolean[] b2)
          Vereinigungsmenge.
 void setTableStrings(java.lang.String[][] tableStrings)
          Setzen der Tabelle durch Übergabe eines zweidimensionalen String-Arrays.
 void sortTable(int[] columns)
          Sortieren der Tabelle.
 Table subTable_FromUsedColumns(boolean[] usedColumns)
          Abfrage einer Teiltabelle.
 Table subTable_FromUsedRows(boolean[] usedRows)
          Abfrage einer Teiltabelle.
 Table subTable_FromUsedRowsColumns(boolean[] usedRows, boolean[] usedColumns)
          Abfrage einer Teiltabelle.
 boolean[] subTable_UsedRows(java.lang.String[] regexp1, java.lang.String[] regexp2)
          Abfrage einer Teiltabelle.
 Table subTable(java.lang.String[] regexp1, java.lang.String[] regexp2)
          Abfrage einer Teiltabelle.
private  int tableWidth()
          Länge der Tabelle (in Spalten).
 java.util.List<java.lang.String> toHtml()
          Ausgabe der Tabelle in HTML.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tableStrings

private java.lang.String[][] tableStrings
tableStrings[y][x] enthält Tabellen-Zelle (x,y).

Constructor Detail

Table

public Table()

Table

public Table(java.lang.String[][] tableStrings)
Anlegen einer neuen Tabelle durch Übergabe eines zweidimensionalen String-Arrays.

Parameters:
tableStrings - Gesamte Tabelle, tableStrings[y][x] enthält Tabellen-Zelle (x,y).
Method Detail

getTableStrings

public java.lang.String[][] getTableStrings()
Abfrage der Tabelle als zweidimensionales String-Array.

Returns:
Gesamte Tabelle.

setTableStrings

public void setTableStrings(java.lang.String[][] tableStrings)
Setzen der Tabelle durch Übergabe eines zweidimensionalen String-Arrays.

Parameters:
tableStrings - Gesamte Tabelle, tableStrings[y][x] enthält Tabellen-Zelle (x,y).

sortTable

public void sortTable(int[] columns)
Sortieren der Tabelle.

Parameters:
columns - Die Spalten, nach denen sortiert werden soll. Zuerst wird nach Spalte columns[0] sortiert, bei Gleichheit nach columns[1] usw.

subTable_UsedRows

public boolean[] subTable_UsedRows(java.lang.String[] regexp1,
                                   java.lang.String[] regexp2)
Abfrage einer Teiltabelle.

Parameters:
regexp1 - Zu erfüllender Regulärer Ausdruck für jede Spalte. null falls Spalte nicht geprüft werden soll.
regexp2 - Zu vermeidender Regulärer Ausdruck für jede Spalte. null falls nichts vermieden werden soll.
Returns:
Boolean-Array, das angibt, welche Zeilen den Kriterien entsprechen.

subTable

public Table subTable(java.lang.String[] regexp1,
                      java.lang.String[] regexp2)
Abfrage einer Teiltabelle.

Parameters:
regexp1 - Zu erfüllender Regulärer Ausdruck für jede Spalte. null falls Spalte nicht geprüft werden soll.
regexp2 - Zu vermeidender Regulärer Ausdruck für jede Spalte. null falls nichts vermieden werden soll.
Returns:
Teiltabelle, die den Suchkriterien entspricht (ggf leere Tabelle).

getUnion

public static boolean[] getUnion(boolean[] b1,
                                 boolean[] b2)
Vereinigungsmenge.

Parameters:
b1 - Menge 1.
b2 - Menge 2.
Returns:
Vereinigung.

getIntersection

public static boolean[] getIntersection(boolean[] b1,
                                        boolean[] b2)
Schnittmenge.

Parameters:
b1 - Menge 1.
b2 - Menge 2.
Returns:
Schnitt.

getComplement

public static boolean[] getComplement(boolean[] b1,
                                      boolean[] b2)
Komplementärmenge.
b1 b2 c
0 0 0
0 1 0
1 0 1
1 1 0

Parameters:
b1 - Menge 1.
b2 - Menge 2.
Returns:
Komplement (Menge 1 ohne Menge 2).

subTable_FromUsedRows

public Table subTable_FromUsedRows(boolean[] usedRows)
Abfrage einer Teiltabelle.

Parameters:
usedRows - Die verwendeten Zeilen.
Returns:
Tabelle, die nur die angegebenen Zeilen enthält (ggf leere Tabelle).

subTable_FromUsedColumns

public Table subTable_FromUsedColumns(boolean[] usedColumns)
Abfrage einer Teiltabelle.

Parameters:
usedColumns - Die verwendeten Spalten.
Returns:
Tabelle, die nur die angegebenen Spalten enthält (ggf leere Tabelle).

subTable_FromUsedRowsColumns

public Table subTable_FromUsedRowsColumns(boolean[] usedRows,
                                          boolean[] usedColumns)
Abfrage einer Teiltabelle.

Parameters:
usedRows - Die verwendeten Zeilen. null falls alle Zeilen verwendet werden sollen. Hat usedRows weniger Elemente als Zeilen verfügbar sind, werden die fehlenden usedRows-Einträge als false interpretiert.
usedColumns - Die verwendeten Spalten. null falls alle Spalten verwendet werden sollen. Hat usedColumns weniger Elemente als Spalten verfügbar sind, werden die fehlenden usedColumns-Einträge als false interpretiert.
Returns:
Tabelle, die nur die angegebenen Zeilen und Spalten enthält (ggf leere Tabelle).

addTable

public void addTable(Table table)
Anhängen einer weiteren Tabelle an die aktuelle Tabelle.

Parameters:
table - Die anzuhängende Tabelle.

toHtml

public java.util.List<java.lang.String> toHtml()
Ausgabe der Tabelle in HTML.

Returns:
Liste von HTML-Zeilen.

tableWidth

private int tableWidth()
Länge der Tabelle (in Spalten).

Returns:
Anzahl der Tabellenspalten.