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

Tutoriais Básicos de Java

Controle de fluxo do Java

Array do Java

Java orientado a objetos (I)

Java orientado a objetos (II)

Java orientado a objetos (III)

Tratamento de Exceções Java

Java Lista (List)

Java Queue (fila)

Conjunto Map do Java

Conjunto Set do Java

Java entrada e saída (I/O)

Reader do Java/Writer

Outros tópicos do Java

Vector Java (Vector)

Neste tutorial, vamos aprender a classe Vector e como usá-la. Também aprenderemos as diferenças entre ela e a classe ArrayList, e por que devemos usar a lista de arrays.

Vector类是List接口的一个实现,它允许我们创建类似于ArrayList类的可调整大小的数组。

Java向量(vector)与ArrayList

在Java中,ArrayList和Vector都实现List接口并提供相同的功能。但是,它们之间存在一些差异。

Vector类同步每个单独的操作。这意味着每当我们想对向量执行某些操作时,Vector类就会自动对该操作应用锁。

这是因为当一个线程访问一个vector时,同时另一个线程试图访问它,会生成一个称为ConcurrentModificationException的异常。因此,对每个操作持续使用锁会降低向量的效率。

但是,在ArrayList中,方法是不同步的。相反,它使用Collections.synchronizedList()方法对整个列表进行同步。

注意:由于向量(vector)不是线程安全的并且效率较低,因此建议使用ArrayList代替Vector。

创建向量(vector)

这是我们如何用Java创建向量(vector)。

Vector<Type> vector = new Vector<>();

此处,Type表示vector存储的数据类型。例如,

//创建整数类型的vector
Vector<Integer> vector = new Vector<>();
//创建字符串类型的vector
Vector<String> vector = new Vector<>();

向量(vector)方法

Vector类还提供List接口的可调整大小的数组实现(类似于ArrayList类)。 一些Vector方法是:

向量添加元素

  • add(element) - 向向量(vector)添加元素

  • add(index, element) - 将元素添加到指定位置

  • addAll(vector) - 将向量(vector)的所有元素添加到另一个向量(vector)

Por exemplo,

import java.util.Vector;
class Main {
    public static void main(String[] args) {
        Vector<String> mammals = new Vector<>();
        //使用add()方法
        mammals.add("Dog");
        mammals.add("Horse");
        //使用索引号
        mammals.add(
2, "Cat");
        System.out.println("Vector: "
" + mammals);
        // Usar o método addAll()
        Vector<String> animals = new Vector<>();
        animals.add("Crocodile");
        animals.addAll(mammals);
        System.out.println("Novo Vector: ") + animais);
    }
}

Resultado de Saída

Vector: [Dog, Horse, Cat]
Novo Vector: [Crocodile, Dog, Horse, Cat]

Acessar elemento do vector

  • get(index) - Retorna o elemento especificado pelo índice

  • iterator() - Retorna o objeto iterador para acessar os elementos do vetor em ordem

Por exemplo,

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");
        // Usar o método get()
        String element = animals.get(2);
        System.out.println("Elemento na posição" 2: " + element);
        // Usar iterator()
        Iterator<String> iterate = animals.iterator();
        System.out.print("Vector: ");
        while(iterate.hasNext()) {
            System.out.print(iterate.next());
            System.out.print(", ");
        }
    }
}

Resultado de Saída

Elemento na posição 2: Cat
Vector: Dog, Horse, Cat,

Remover elemento do vector

  • remove(index) - Remover elemento a partir de uma posição específica

  • removeAll() - Remover todos os elementos

  • clear() - Remover todos os elementos. É mais eficiente do que removeAll()

Por exemplo,

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("Vector inicial: " + animais);
        //Usar o método remove()
        String element = animals.remove(1);
        System.out.println("Elemento Removido: ") + element);
        System.out.println("Novo Vector: ") + animais);
        // Usar o método clear()
        animals.clear();
        System.out.println("Vector após clear(): ") + animais);
    }
}

Resultado de Saída

Vetor Inicial: [Cachorro, Cavalo, Gato]
Elemento Removido: Cavalo
Novo Vector: [Cachorro, Gato]
Vector após clear(): []

Outros Métodos do Vetor (vector)

MétodoDescrição do Conteúdo
set()Alterar o elemento do vetor
size()Retornar o tamanho do vetor
toArray()Converter um vetor em um array
toString()Converter um vetor em uma string
contains()

Procurar um elemento específico no vetor e retornar um valor booleano