Date: Fri, 10 Nov 2023 15:11:48 +0100
Subject: add new repo
---
.../hjp5/html/k100092.html | 401 +++++++++++++++++++++
1 file changed, 401 insertions(+)
create mode 100644 Master/Reference Architectures and Patterns/hjp5/html/k100092.html
(limited to 'Master/Reference Architectures and Patterns/hjp5/html/k100092.html')
diff --git a/Master/Reference Architectures and Patterns/hjp5/html/k100092.html b/Master/Reference Architectures and Patterns/hjp5/html/k100092.html
new file mode 100644
index 0000000..58ee15c
--- /dev/null
+++ b/Master/Reference Architectures and Patterns/hjp5/html/k100092.html
@@ -0,0 +1,401 @@
+
+
+
+Handbuch der Java-Programmierung, 5. Auflage
+
+
+
+
+
+
+
+
+
+
+
+
+14.2 Die Klasse Vector
+
+
+
+
+
+Die Klasse Vector
+aus dem Paket java.util
+ist die Java-Repräsentation einer linearen Liste.
+Die Liste kann Elemente beliebigen Typs enthalten, und ihre Länge
+ist zur Laufzeit veränderbar. Vector
+erlaubt das Einfügen von Elementen an beliebiger Stelle und bietet
+sowohl sequenziellen als auch wahlfreien Zugriff auf die Elemente.
+Das JDK realisiert einen Vector
+als Array von Elementen des Typs Object.
+Daher sind Zugriffe auf vorhandene Elemente und das Durchlaufen der
+Liste schnelle Operationen. Löschungen und Einfügungen,
+die die interne Kapazität des Arrays überschreiten, sind
+dagegen relativ langsam, weil Teile des Arrays umkopiert werden müssen.
+In der Praxis können diese implementierungsspezifischen Details
+allerdings meist vernachlässigt werden, und ein Vector
+kann als konkrete Implementierung einer linearen Liste angesehen werden.
+
+
+
+
+
14.2.1 Einfügen von Elementen
+
+
+Das Anlegen eines neuen Vektors kann mit Hilfe des parameterlosen
+Konstruktors erfolgen:
+
+
+
+
+Nach dem Anlegen ist ein Vector
+zunächst leer, d.h. er enthält keine Elemente. Durch Aufruf
+von isEmpty
+kann geprüft werden, ob ein Vector
+leer ist; size
+liefert die Anzahl der Elemente:
+
+
+
+
+
+
+public final boolean isEmpty()
+
+public final int size()
+
+
+ |
+
+java.util.Vector |
+
+
+
+
+Elemente können an beliebiger Stelle in die Liste eingefügt
+werden. Ein Vector
+erlaubt die Speicherung beliebiger Objekttypen, denn die Einfüge-
+und Zugriffsmethoden arbeiten mit Instanzen der Klasse Object.
+Da jede Klasse letztlich aus Object
+abgeleitet ist, können auf diese Weise beliebige Objekte in die
+Liste eingefügt werden.
+
+
+
+
+Neue Elemente können wahlweise an das Ende des Vektors oder an
+einer beliebigen anderen Stelle eingefügt werden. Das Einfügen
+am Ende erfolgt mit der Methode addElement:
+
+
+
+
+In diesem Fall wird das Objekt obj
+an das Ende der bisherigen Liste von Elementen angehängt.
+
+
+Soll ein Element dagegen an einer beliebigen Stelle innerhalb der
+Liste eingefügt werden, ist die Methode insertElementAt
+zu verwenden:
+
+
+
+
+
+
+public void insertElementAt(Obj obj, int index)
+ throws ArrayIndexOutOfBoundsException
+
+
+ |
+
+java.util.Vector |
+
+
+
+
+Diese Methode fügt das Objekt obj
+an der Position index in den
+Vektor ein. Alle bisher an dieser oder einer dahinterliegenden Position
+befindlichen Elemente werden um eine Position weitergeschoben.
+
+
+
+
+
14.2.2 Zugriff auf Elemente
+
+
+Ein Vektor bietet sowohl sequenziellen als auch wahlfreien
+Zugriff auf seine Elemente. Für den sequenziellen Zugriff bietet
+es sich an, den im nachfolgenden Abschnitt beschriebenen Iterator
+zu verwenden. Der wahlfreie Zugriff erfolgt mit einer der Methoden
+firstElement,
+lastElement
+oder elementAt:
+
+
+
+
+
+
+public Object firstElement()
+ throws ArrayIndexOutOfBoundsException
+
+public Object lastElement()
+ throws ArrayIndexOutOfBoundsException
+
+public Object elementAt(int index)
+ throws ArrayIndexOutOfBoundsException
+
+
+ |
+
+java.util.Vector |
+
+
+
+
+firstElement
+liefert das erste Element, lastElement
+das letzte. Mit Hilfe von elementAt
+wird auf das Element an Position index
+zugegriffen. Alle drei Methoden verursachen eine Ausnahme, wenn das
+gesuchte Element nicht vorhanden ist.
+
+
+
+
+
14.2.3 Der Vektor als Iterator
+
+
+Für den sequenziellen Zugriff auf die Elemente des Vektors steht
+ein Iterator zur Verfügung. Ein Iterator ist eine Abstraktion
+für den aufeinanderfolgenden Zugriff auf alle Elemente einer
+komplexen Datenstruktur (siehe Abschnitt 10.4.5.
+Ein Iterator für die traditionellen Collection-Klassen wird in
+Java durch das Interface Enumeration
+zur Verfügung gestellt und deshalb in der Java-Welt oft auch
+als Enumerator bezeichnet.
+
+
+Das Interface Enumeration
+besitzt die Methoden hasMoreElements
+und nextElement.
+Nach der Initialisierung zeigt ein Enumeration-Objekt
+auf das erste Element der Aufzählung. Durch Aufruf von hasMoreElements
+kann geprüft werden, ob weitere Elemente in der Aufzählung
+enthalten sind, und nextElement
+setzt den internen Zeiger auf das nächste Element:
+
+
+
+
+
+
+public boolean hasMoreElements()
+
+public Object nextElement()
+ throws NoSuchElementException
+
+
+ |
+
+java.util.Enumeration |
+
+
+
+
+In der Klasse Vector
+liefert die Methode elements
+einen Enumerator für alle Elemente, die sich im Vektor befinden:
+
+
+
+
+Das folgende Beispiel verdeutlicht die Anwendung von elements:
+
+
+
+
+
+
+
+
+001 /* Listing1401.java */
+002
+003 import java.util.*;
+004
+005 public class Listing1401
+006 {
+007 public static void main(String[] args)
+008 {
+009 Vector v = new Vector();
+010
+011 v.addElement("eins");
+012 v.addElement("drei");
+013 v.insertElementAt("zwei",1);
+014 for (Enumeration el=v.elements(); el.hasMoreElements(); ) {
+015 System.out.println((String)el.nextElement());
+016 }
+017 }
+018 }
+
+ |
+
+Listing1401.java |
+
+
+
+Listing 14.1: Die Methode elements der Klasse Vector