import java.util.ArrayList;
public class ArrayListClass {
public static void main(String[] args){
ArrayList al = new ArrayList();
Integer ig = new Integer(17);
Character ca = new Character('w');
al.add("Willi");
al.add(ca);
al.add(ig);
for(int i=0;i<al.size();i++){
System.out.println(al.get(i));
}
}
}
In einer ArrayList können nahezu
beliebig viele Elemente gespeichert werden. Die Größe der ArrayList muss hierzu nicht festgelegt werden,
kann jedoch bei der Instanzbildung als Parameter an den Konstruktor
übergeben werden:
public class ArrayListClass {
public static void main(String[] args){
ArrayList al = new ArrayList();
Integer ig = new Integer(17);
Character ca = new Character('w');
al.add("Willi");
al.add(ca);
al.add(ig);
for(int i=0;i<al.size();i++){
System.out.println(al.get(i));
}
}
}
ArrayList al = new ArrayList(100);
Sie ist jedoch jederzeit erweiterbar. Die zu speichernden Elemente
müssen vom Typ Object sein, können
also - wie im Beispiel - auch unterschiedlichen Typen angehören. Dies
ist bei einem Array nicht möglich. Das
Einfügen erfolgt mit der Methode add().Um ein Element an einer bestimmten Position eizufügen muss eine set()-Methode verwendet werden:
al.set(i, str);
Dies entspricht der Array-Syntax a[i] = str;Das Auslesen einer ArrayList gestaltet sich etwas komplizierter, da Elemente von Typ Object zurück gegeben werden. Der Wert muss somit entsprechend gewandelt werden:
Integer i = (Integer)al.get(25);
Hier wird das Element an 26. Stelle ausgelesen und in ein Integer-Objekt
gewandelt (Auch eine ArrayList beginnt bei 0
zu zählen). Um die Vorteile von Array und ArrayList zu kombinieren, kann man so vorgehen, dass man zunächst alle gewünschten Elemente in eine ArrayList einfügt und diese dann in ein Array wandelt. Selbstverständlich dürfen hierzu nur gleiche Datentypen in der ArrayList gespeichert sein:
Möchte man ein Array primitiver Datentypen erzeugen, so muss dies explizit erzeugt werden:
import java.util.ArrayList;
public class ArrayListZuArrayClass {
public static void main(String[] args){
ArrayList al = new ArrayList();
int i=25;
while(i<74){
al.add(new Integer(i));
i++;
}
Integer[] ia = new Integer[al.size()];
al.toArray(ia);
int[] inta = new int[al.size()];
for(int n=0; n<inta.length; n++){
inta[n]=ia[n].intValue();
System.out.println(inta[n]);
}
}
}
public class ArrayListZuArrayClass {
public static void main(String[] args){
ArrayList al = new ArrayList();
int i=25;
while(i<74){
al.add(new Integer(i));
i++;
}
Integer[] ia = new Integer[al.size()];
al.toArray(ia);
int[] inta = new int[al.size()];
for(int n=0; n<inta.length; n++){
inta[n]=ia[n].intValue();
System.out.println(inta[n]);
}
}
}