English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial lernen wir die Vector-Klasse und wie man sie verwendet. Wir werden auch die Unterschiede zwischen der Vector-Klasse und der ArrayList-Klasse sowie warum wir zu ArrayList wechseln sollten, lernen.
Die Vector-Klasse ist eine Implementierung der List-Schnittstelle und ermöglicht es uns, Vektoren zu erstellen, die ähnlich sind }}ArrayListKlassen anpassbare Größe des Array.
In Java implementieren ArrayList und Vector beide die List-Schnittstelle und bieten die gleichen Funktionen. Es gibt jedoch einige Unterschiede zwischen ihnen.
Die Vector-Klasse synchronisiert jede einzelne Operation. Das bedeutet, dass die Vector-Klasse automatisch einen Lock auf jede Operation anwendet, die wir auf den Vektor ausführen möchten.
Das liegt daran, dass eine Exception namens ConcurrentModificationException generiert wird, wenn ein Thread einen Vektor zugreift, während gleichzeitig ein anderer Thread versucht, darauf zuzugreifen. Daher wird das Verwenden eines Schlosses für jede Operation die Effizienz des Vektors verringern.
Doch in ArrayList sind die Methoden nicht synchronisiert. Stattdessen wird die Methode Collections.synchronizedList() verwendet, um die gesamte Liste zu synchronisieren.
Beachtung:Da der Vektor (vector) nicht thread-sicher ist und ineffizient ist, wird empfohlen, ArrayList anstelle von Vector zu verwenden.
So erstellen wir in Java Vektoren (vector).
Vector<Type> vector = new Vector<>();
Hierbei steht Type für die Datenart, die der Vektor speichert. Zum Beispiel,
//Erstellen eines Vektors für Integer Vector<Integer> vector = new Vector<>(); //Erstellen eines Vektors für Zeichenfolgen Vector<String> vector = new Vector<>();
Die Vector-Klasse bietet auch eine anpassbare Größe des Array-Implementierung der List-Schnittstelle (ähnlich wie die ArrayList-Klasse). Einige Methoden der Vector sind:
add(element) - Fügt ein Element zu einem Vektor (vector) hinzu
add(index, element) - Fügt ein Element an einer bestimmten Position hinzu
addAll(vector) - Fügt alle Elemente eines Vektors (vector) in einen anderen Vektor (vector) hinzu
Beispielsweise,
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> mammals = new Vector<>(); //Verwendung der add() Methode mammals.add("Hund"); mammals.add("Pferd"); //Verwendung der Indexnummer mammals.add(2, "Katze"); System.out.println("Vector: " + mammals); // Verwenden Sie addAll() -Methode Vector<String> animals = new Vector<>(); animals.add("Crocodile"); animals.addAll(mammals); System.out.println("New Vector: ") + animals); } }
Output Result
Vector: [Dog, Horse, Cat] Neuer Vector: [Krokodil, Dog, Horse, Cat]
get(index) - Geben Sie das Element zurück, das durch den Index angegeben wird
iterator() - Geben Sie ein Iterator-Objekt zurück, um die Elemente des Vektors in der Reihenfolge zu durchlaufen
Beispielsweise,
import java.util.Iterator; import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> animals = new Vector<>(); animals.add("Dog"); animals.add("Horse"); animals.add("Cat"); // Verwenden Sie get() -Methode 2); System.out.println("Element an der Index", 2: " + element); // Verwenden Sie iterator() Iterator<String> iterate = animals.iterator(); System.out.print("Vector: "); while(iterate.hasNext()) { System.out.print(iterate.next()); System.out.print(", "); } } }
Output Result
Element an der Index 2: Cat Vector: Dog, Horse, Cat,
remove(index) - Löschen Sie Elemente an einer bestimmten Position
removeAll() - Löschen Sie alle Elemente
clear() - Löschen Sie alle Elemente. Es ist effizienter als removeAll()
Beispielsweise,
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> animals = new Vector<>(); animals.add("Dog"); animals.add("Horse"); animals.add("Cat"); System.out.println("Initialer Vector: " + animals); //Verwenden Sie die remove() -Methode String element = animals.remove(1); System.out.println("Removed Element: ") + element); System.out.println("New Vector: ") + animals); // Use the clear() method animals.clear(); System.out.println("Vector after clear(): ") + animals); } }
Output Result
Initial Vector: [Dog, Horse, Cat] Removed Element: Horse New Vector: [Dog, Cat] Vector after clear(): []
Method | Content Description |
---|---|
set() | Change the element of the vector |
size() | Return the size of the vector |
toArray() | Convert the vector to an array |
toString() | Convert the vector to a string |
contains() | Search for the specified element in the vector and return a boolean value |