Vetor Java
Vetor Java
Neste tutorial, aprenderemos sobre a classe Vector e como usá-la. Também aprenderemos como ela é diferente da classe ArrayList e por que devemos usar listas de matrizes.
O
Vector
classe é uma implementação do List
interface que nos permite criar matrizes redimensionáveis semelhantes à classe ArrayList. Java Vector vs. ArrayList
Em Java, tanto
ArrayList
e Vector
implementa o List
interface e fornece as mesmas funcionalidades. No entanto, existem algumas diferenças entre eles. Os
Vector
classe sincroniza cada operação individual. Isso significa que sempre que queremos realizar alguma operação em vetores, o Vector
class aplica automaticamente um bloqueio a essa operação. É porque quando uma thread está acessando um vetor, e ao mesmo tempo outra thread tenta acessá-lo, uma exceção chamada
ConcurrentModificationException
é gerado. Portanto, esse uso contínuo de bloqueio para cada operação torna os vetores menos eficientes. No entanto, em listas de arrays, os métodos não são sincronizados. Em vez disso, ele usa o
Collections.synchronizedList()
método que sincroniza a lista como um todo. Observação: Recomenda-se usar
ArrayList
no lugar de Vector
porque os vetores não são seguros para threads e são menos eficientes. Criando um vetor
Aqui está como podemos criar vetores em Java.
Vector<Type> vector = new Vector<>();
Aqui, Digite indica o tipo de uma lista vinculada. Por exemplo,
// create Integer type linked list
Vector<Integer> vector= new Vector<>();
// create String type linked list
Vector<String> vector= new Vector<>();
Métodos de vetor
O
Vector
também fornece as implementações de matriz redimensionável do List
interface (semelhante ao ArrayList
classe). Alguns dos Vector
métodos são:Adicionar elementos ao vetor
add(element)
- adiciona um elemento aos vetoresadd(index, element)
- adiciona um elemento à posição especificadaaddAll(vector)
- adiciona todos os elementos de um vetor a outro vetor
Por exemplo,
import java.util.Vector;
class Main {
public static void main(String[] args) {
Vector<String> mammals= new Vector<>();
// Using the add() method
mammals.add("Dog");
mammals.add("Horse");
// Using index number
mammals.add(2, "Cat");
System.out.println("Vector: " + mammals);
// Using addAll()
Vector<String> animals = new Vector<>();
animals.add("Crocodile");
animals.addAll(mammals);
System.out.println("New Vector: " + animals);
}
}
Saída
Vector: [Dog, Horse, Cat] New Vector: [Crocodile, Dog, Horse, Cat]
Acessar elementos vetoriais
get(index)
- retorna um elemento especificado pelo índiceiterator()
- retorna um objeto iterador para acessar sequencialmente elementos vetoriais
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");
// Using get()
String element = animals.get(2);
System.out.println("Element at index 2: " + element);
// Using iterator()
Iterator<String> iterate = animals.iterator();
System.out.print("Vector: ");
while(iterate.hasNext()) {
System.out.print(iterate.next());
System.out.print(", ");
}
}
}
Saída
Element at index 2: Cat Vector: Dog, Horse, Cat,
Remover elementos vetoriais
remove(index)
- remove um elemento da posição especificadaremoveAll()
- remove todos os elementosclear()
- remove todos os elementos. É mais eficiente queremoveAll()
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("Initial Vector: " + animals);
// Using remove()
String element = animals.remove(1);
System.out.println("Removed Element: " + element);
System.out.println("New Vector: " + animals);
// Using clear()
animals.clear();
System.out.println("Vector after clear(): " + animals);
}
}
Saída
Initial Vector: [Dog, Horse, Cat] Removed Element: Horse New Vector: [Dog, Cat] Vector after clear(): []
Outros métodos de vetor
Métodos | Descrições |
---|---|
set() | altera um elemento do vetor |
size() | retorna o tamanho do vetor |
toArray() | converte o vetor em uma matriz |
toString() | converte o vetor em uma String |
contains() | pesquisa o vetor pelo elemento especificado e retorna um resultado booleano |
Java