16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

Die Aufzählung erfolgt meistens über<br />

for (Enumeration e = ds.elements(); e.hasMoreElements(); )<br />

System.out.pr<strong>in</strong>tln(e.nextElements());<br />

Die Datenstruktur ds besitzt e<strong>in</strong>e Metho<strong>de</strong> elements(), die e<strong>in</strong> Enumeration-Objekt<br />

zurückgibt, das die Aufzählung erlaubt.<br />

6.1.2 Die Klasse Vector<br />

class java.util.Vector extends AbstractList<br />

implements List, Cloneable, Collection, Serializable<br />

Die Klasse Vector beschreibt e<strong>in</strong> Array mit variabler Länge. Objekte <strong>de</strong>r Klasse<br />

Vector s<strong>in</strong>d Repräsentationen e<strong>in</strong>er l<strong>in</strong>earen Liste. Die Liste kann Elemente<br />

beliebigen Typs enthalten, ihre Länge ist zur Laufzeit verän<strong>de</strong>rbar (Array mit variabler<br />

Länge). Vector erlaubt das E<strong>in</strong>fügen von Elementen an beliebiger Stelle, bietet<br />

sequentiellen und wahlfreien Zugriff auf die Elemente. Das JDK realisiert Vector als<br />

Array von Elementen <strong>de</strong>s Typs Object. Der Zugriff auf Elemente erfolgt über<br />

Indizes. Es wird dazu aber ke<strong>in</strong> Operator [], son<strong>de</strong>rn es wer<strong>de</strong>n Metho<strong>de</strong>n benutzt,<br />

die e<strong>in</strong>en In<strong>de</strong>x als Parameter annehmen.<br />

Anlegen e<strong>in</strong>es neuen Vektors (Konstruktor): public Vector()<br />

public Vector(<strong>in</strong>t <strong>in</strong>itialCapacity, <strong>in</strong>t capacityIncrement)<br />

// E<strong>in</strong> Vector vergrößert sich automatisch, falls mehr Elemente aufgenommen wer<strong>de</strong>n, als<br />

// ursprünglich vorgesehen (Resiz<strong>in</strong>g). Dabei sollen <strong>in</strong>itialCapacity und capacityIncrement<br />

// passend gewählt wer<strong>de</strong>n.<br />

E<strong>in</strong>fügen von Elementen: public void addElement(Object obj)<br />

// Anhängen an <strong>de</strong>s En<strong>de</strong> <strong>de</strong>r bisher vorliegen<strong>de</strong>n Liste von Elementen<br />

Eigenschaften: public boolean isEmpty()<br />

// Prüfen, ob <strong>de</strong>r Vektor leer ist<br />

public <strong>in</strong>t size()<br />

// bestimmt die Anzahl <strong>de</strong>r Elemente<br />

public <strong>in</strong>t capacity()<br />

// bestimmt die <strong>in</strong>terne Größe <strong>de</strong>s Arrays. Sie kann mit ensureCapacity() geän<strong>de</strong>rt<br />

// wer<strong>de</strong>n<br />

E<strong>in</strong>fügen an beliebiger Stelle <strong>in</strong>nerhalb <strong>de</strong>r Liste:<br />

public void <strong>in</strong>sertElementAt(Object obj, <strong>in</strong>t <strong>in</strong><strong>de</strong>x) throws<br />

ArrayIn<strong>de</strong>xOutOfBoundsException<br />

// fügt obj an die Position <strong>in</strong><strong>de</strong>x <strong>in</strong> <strong>de</strong>n "Vector" e<strong>in</strong>.<br />

Zugriff auf Elemente: Für <strong>de</strong>n sequentiellen Zugriff steht e<strong>in</strong> Iterator zur Verfügung.<br />

Wahlfreier Zugriff erfolgt über:<br />

public Object firstElement() throws NoSuchElementException;<br />

public Object lastElement() throws NoSuchElementException;<br />

public Object elementAt(<strong>in</strong>t <strong>in</strong><strong>de</strong>x) throws ArrayIn<strong>de</strong>xOutOfBoundException;<br />

firstElement() liefert das erste, lastElement() das letzte Element- Mit<br />

elementAt() wird auf das Element an <strong>de</strong>r Position <strong>in</strong><strong>de</strong>x zugegriffen. Alle 3<br />

Metho<strong>de</strong>n verursachen e<strong>in</strong>e Ausnahme, wenn das gewünschte Element nicht<br />

vorhan<strong>de</strong>n ist.<br />

Arbeitsweise <strong>de</strong>s <strong>in</strong>ternen Arrays. Der Vector vergrößert sich automatisch, falls mehr<br />

Elemente aufgenommen wer<strong>de</strong>n. Die Operation heißt Resiz<strong>in</strong>g.<br />

422

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!