wie kriege ich den letzten/ersten element aus meiner array liste heraus ?
kleines Beispiel :
Java:
publicvoidgetColumns(String username,String password,String database,String table){String columnName;String[] columnsArray =null;
columnSelection =newOptionGroup("Select your Column(s)");
columnSelection.setImmediate(true);
columnSelection.setMultiSelect(true);try{Class.forName("org.postgresql.Driver");String url ="jdbc:postgresql://localhost:5432/"+database;
connection =DriverManager.getConnection(url, username, password);DatabaseMetaData dbmd = connection.getMetaData();ResultSet rs = dbmd.getColumns(null,null, table,null);while(rs.next()){
colummName = rs.getString("COLUMN_NAME");
columnSelection.addItem(colummName);// Mein Array wird mit den meta daten einer tabelle befüllt (ColumnName)
columnsArray =newString[]{columnName};}}catch(SQLException e){}catch(ClassNotFoundException e){
e.printStackTrace();}if(connection!=null){
columnList.addComponent(columnSelection);
columnSelection.select(columnsArray[columnsArray.length-1]);
columnsPanel.addComponent(okColumn);}else{
window.showNotification("Cannot connect to the Database",Notification.TYPE_WARNING_MESSAGE);}}
am ende kommt eine variable anzahl von checkboxen heraus ich will das die erste checkbox ausgewählt(selected/checked) wird bzw. die checkbox ausgewählt(selected/checked) wird die zuerst in die Liste reinkommt.
Hinweis:
gib die Länge von columnsArray aus, gib alle Elemente einzeln aus,
gib das ganze auch während der Schleife in jedem Durchaus aus,
also beobachte, wie das Array 'nach und nach befüllt wird' oder wie immer dieser Vorgang bei dir zu benennen ist
Logging und Debugging verraten dir immer was passiert,
nichts nachzuschauen und nur das Ergebnis nicht zu verstehen ist allgemein schlechte Taktik
> die länge ist variabel kann 100 sein aber auch 5
[JAVA=19]columnsArray = new String[]{columnName};[/code]
Damit weist du der Variablen "columnsArray" immer ein neues Array mit nur einem Element zu ("columnName").
Du müsstest vorher wissen wie viele Spalten es gibt und dann entsprechend das Array vor der while-Schleife
anlegen. Ungefähr so:
Java:
int size =42;String[] columnsArray =newString[size];
Ob man direkt aus dem ResultSet die Anzahl der Spalten erhalten kann, weiss ich grad nicht.
Musste mal in die Api gucken.