English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java-Grundlagen-Tutorial

Java Prozesssteuerung

Java Array

Java objektorientiert(I)

Java objektorientiert(II)

Java objektorientiert(III)

Java-Exception-Verarbeitung

Java Liste(List)

Java Queue(Koqueue)

Java Map-Sammlung

Java Set-Sammlung

Java Eingabe-Ausgabe(I/O)

Java Reader/Writer

Andere Themen von Java

Java-Vector (Vector)

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.

Java-Vektor (vector) und ArrayList

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.

Erstellen eines Vektors (vector)

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<>();

Vektor-Methode

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:

Vektor-Element hinzufügen

  • 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]

Zugriff auf Vector-Elemente

  • 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,

Löschen Sie Vector-Elemente

  • 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(): []

Other Methods of Vector (vector)

MethodContent 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