what is java vector java vector class tutorial with examples
Este tutorial explica tudo sobre a estrutura de dados vetoriais em Java com exemplos. Você aprenderá a criar, inicializar, classificar e usar um vetor Java em seus programas:
Um vetor pode ser definido como uma matriz dinâmica que pode crescer ou encolher por conta própria, ou seja, o vetor crescerá quando mais elementos forem adicionados a ele e encolherá quando os elementos forem removidos dele.
Esse comportamento é diferente de matrizes estáticas. Mas, semelhante aos arrays, os elementos do vetor podem ser acessados usando índices inteiros.
=> Verifique aqui para ver A-Z dos tutoriais de treinamento de Java aqui.
Um vetor pode ser visto como semelhante a outra estrutura de dados de matriz dinâmica, ArrayList, exceto pelas duas diferenças abaixo:
- O vetor é sincronizado, ou seja, todos os métodos no Vector são marcados como 'sincronizados' e, portanto, uma vez que um método é invocado, o mesmo método não pode ser invocado a menos que a chamada anterior tenha terminado.
- A classe vetorial possui muitos métodos que não fazem parte da estrutura de coleções, mas seus métodos legados.
O que você aprenderá:
Java Vector Class
Uma classe Vector é separada da “ java.util ”Pacote e implementa a interface List. Um vetor é uma matriz de objetos ou vetor de objetos.
Uma declaração de classe da classe Vector é fornecida abaixo:
public class Vector extends Object implements List, Cloneable, Serializable
Conforme mostrado acima, uma classe Vector estende “ java.lang.object ”E implementa interfaces List, Cloneable e Serializable.
Como criar um vetor em Java?
Você pode criar um objeto Vector usando qualquer um dos seguintes métodos do construtor Vector.
como abrir um arquivo swf no cromo
Protótipo de Construtor | Descrição | |
---|---|---|
Claro | Vazio claro () | Limpa o vetor de seus elementos. |
vetor() | Este é o construtor padrão da classe Vector. Ele cria um vetor vazio com tamanho 10. | |
vetor (int initialCapacity) | Este construtor sobrecarregado constrói um objeto Vector vazio com a capacidade = initialCapacity. | |
vetor (int initialCapacity, int capacityIncrement) | Este método construtor cria um objeto Vector vazio com initialCapacity e capacityIncrement especificados. | |
Vetor (coleção c) | Um objeto Vector é criado com os elementos iniciais da coleção especificada c. |
Vejamos cada um dos construtores para inicializar objetos Vector.
Inicializar vetor
(i) Vetor ()
Este é o construtor padrão da classe Vector. Quando você invoca esse construtor, um objeto Vector de tamanho padrão 10 é criado.
A sintaxe geral deste método é:
Objeto de vetor = novo vetor ();
Por exemplo,
Vector vec1 = new Vector ();
A declaração acima cria um novo vetor ‘vec1’ com tamanho 10.
(ii) Vetor (int initialCapacity)
O construtor sobrecarregado da classe Vector aceita ‘initialCapacity’ como argumento. Este construtor cria um objeto Vector com a capacidade especificada.
A sintaxe geral do método é:
Objeto de vetor = novo vetor (capacidade inicial);
Por exemplo,
Vector vec1 = new Vector (10);
A instrução de programação acima criará um objeto Vector 'vec1' com a capacidade de 10, ou seja, este vetor pode armazenar até 10 elementos.
(iii) Vetor (int initialCapacity, int capacityIncrement)
Este é mais um construtor sobrecarregado da classe Vector e cria um objeto Vector com a capacidade inicial especificada e incremento para a capacidade.
A sintaxe geral desse método é:
Objeto de vetor = novo vetor (initialCapacity, capacityIncrement);
Por exemplo,
Vector vec1 = new Vector(5,10);
Na declaração acima, a capacidade inicial do vetor é 5 e o incremento é 10. Isso significa que quando o 6ºelemento for inserido no vetor, a capacidade do vetor será incrementada para 15 (5 + 10). Da mesma forma, quando o 16ºelemento for inserido, a capacidade vetorial do Vetor será estendida para 25 (15 +10).
(iv) Vetor (Coleção c)
O último construtor sobrecarregado da classe Vector assume uma coleção predefinida como um argumento e cria um Vector com todos os elementos dessa coleção como seus elementos.
A sintaxe geral é:
Objeto de vetor = novo vetor (coleção c);
Por exemplo,
Vector vec1 = new Vector(aList); where aList = {1,2,3,4,5};
A declaração acima criará um vetor ‘vec1’ com elementos iniciais como {1,2,3,4, 5}.
Manter todas essas descrições em mente nos permitirá implementar um programa Vector para entender melhor esses construtores.
Métodos de vetor em Java
A seguir estão os métodos que são suportados pela classe Vector em Java.
Nome do Método | Protótipo | Descrição |
---|---|---|
adicionar | Adição booleana (E e) | Adiciona um determinado elemento ao final do vetor. |
Adicionar vazio (índice interno, elemento E) | Adicione o elemento ao vetor no índice especificado. | |
addAll | Boolean addAll (coleção c) | Adiciona todos os elementos de determinada coleção ao final do vetor. |
Boolean addAll (int index, Collection c) | Adiciona todos os elementos da coleção especificada no índice especificado. | |
addElement | void addElement (E obj) | Adiciona o elemento especificado no final do vetor, aumentando o tamanho do vetor. |
Capacidade | Capacidade interna () | Retorna a capacidade atual do vetor. |
Clone | Clone de objeto () | Clona o vetor. |
Contém | Boolean contém (objeto o) | Verifica se o vetor contém o elemento especificado. |
containsAll | Boolean containsAll (coleção c) | Verifica se o vetor contém todos os elementos presentes em determinada coleção. |
copyInto | Void copyInto (Object () anArray) | Copia os elementos do vetor em uma determinada matriz. |
ElementAt | E ElementAt (índice interno) | Retorna o elemento do vetor no índice especificado. |
Elements | Enumerationelements () | Retorna componentes enumerados para o vetor. |
garantir a capacidade | Void verifyCapacity (int minCapacity) | Aumenta a capacidade do vetor para atender à capacidade mínima especificada. |
Nome do Método | Protótipo | Descrição |
---|---|---|
insertElementAt | Void insertElementAt (E obj, int index) | Insere o objeto fornecido no vetor no índice fornecido. |
É igual a | Boolean equals (Objeto o) | Compara o vetor atual com o vetor especificado para verificar se eles são iguais. |
firstElement | E firstElement () | Retorna o primeiro elemento do vetor no índice 0. |
Obter | E get (índice interno) | Retorna o elemento do vetor no índice especificado. |
hashCode | int hashCode () | Retorna o valor do código hash para o vetor. |
índice de | int indexOf (Object o) | encontra o índice da primeira ocorrência do elemento dado no vetor; -1 se o elemento não estiver presente no vetor. |
int indexOf (Object o, int index) | Pesquisa o vetor do índice fornecido na direção para frente para o elemento especificado; retorna o índice se o elemento for encontrado, e -1 se o elemento não for encontrado. | |
está vazia | Boolean isEmpty () | Verifica se o vetor está vazio. |
Iterator | Iteratoriterator () | Retorna um iterador que é usado para percorrer os elementos do vetor. |
lastElement | E lastElement () | Retorna o último elemento do vetor. |
lastIndexOf | Int lastIndexOf (Object o) | Pesquisa o vetor pela última ocorrência de um determinado elemento e retorna o índice ou retorna -1 se o elemento não foi encontrado. |
Int lastIndexOf (Object o, int index) | Começa a pesquisar a última ocorrência do elemento fornecido a partir do índice fornecido para trás. Retorna o índice se o elemento for encontrado, caso contrário, retorna -1. | |
listIterator | ListIteratorlistIterator () | Retorna um iterador de lista sobre os elementos do vetor. |
ListIteratorlistIterator (índice interno) | Retorna um iterador de lista sobre os elementos do vetor, começando com o índice fornecido. |
Nome do Método | Protótipo | Descrição |
---|---|---|
removeRange | protected void removeRange (int fromIndex, int toIndex) | Exclui todos os elementos do vetor no intervalo fornecido de fromIndex (inclusive), totoIndex (exclusivo). |
Retirar | E remove (índice interno) | Exclui o elemento em determinado índice do vetor. |
Remoção booleana (objeto o) | Exclui a primeira ocorrência do elemento fornecido do vetor. Se o elemento não estiver presente, nada acontecerá com o vetor | |
deletar tudo | Boolean removeAll (coleção c) | Exclui todos os elementos do vetor que estão presentes na coleção fornecida. |
void removeAll Elements () | Exclui todos os elementos do vetor, reduzindo-o ao tamanho zero. | |
removeElement | Boolean removeElement (Object obj) | Remove a primeira ocorrência do elemento fornecido do vetor. |
void removeElementAt (índice interno) | Exclui o elemento no índice fornecido. | |
reter tudo | Boolean reterAll (coleção c) | Ao contrário de 'removeAll', o método retémAll retém elementos no Vetor que correspondem aos elementos na coleção especificada. |
definir | E conjunto (índice interno, elemento E) | Define o valor em determinado índice com o novo elemento fornecido. |
Void set ElementAt (E obj, int index) | Define os elementos fornecidos no índice fornecido. | |
setSize | Void setSize (int newSize) | Define o tamanho dado para este vetor. |
Tamanho | tamanho interno () | Retorna o número de elementos neste vetor ou o comprimento do vetor. |
subList | ListsubList (intfromIndex, inttoIndex) | Retorna uma visualização ou subLista do vetor que varia de índice a índice. |
toArray | Object () toArray () | Converte o vetor fornecido em uma matriz contendo todos os elementos do vetor na ordem fornecida. |
T () toArray (T () a) | Retorna uma matriz do tipo especificado contendo todos os elementos do vetor. | |
para sequenciar | String toString () | Retorna uma representação de string do vetor. |
trimToSize | void trimToSize () | Corta o vetor para acomodar o tamanho atual. |
Implementação de vetor
O programa Java a seguir demonstra o uso de todos os métodos construtores descritos acima.
import java.util.*; public class Main{ public static void main(String() args) { //Create vectors v1, v2,v3 and v4 Vector v1 = new Vector(); //a vector with default constructor Vector v2 = new Vector(20); // a vector of given Size //initialize vector v2 with values v2.add(10); v2.add(20); v2.add(30); Vector v3 = new Vector(30, 10); // a vector of given Size and Increment // create a vector v4 with given collection List aList = new ArrayList(); aList.add('one'); aList.add('two'); Vector v4 = new Vector(aList); //print contents of each vector System.out.println('Vector v1 Contents:' + v1); System.out.println('Vector v2 Contents:' + v2); System.out.println('Vector v3 Contents:' + v3); System.out.println('Vector v4 Contents:' + v4); } }
Resultado:
O programa acima contém quatro vetores. O primeiro v1 é criado com um construtor padrão. O segundo Vector v2 é criado com capacidade inicial de 20. Então, alguns elementos são adicionados a v2. O terceiro vetor é criado com uma capacidade inicial de 30 e incremento de 10.
Em seguida, criamos um ArrayList e criamos um quarto Vector v4 com o ArrayList como argumento. Finalmente, exibimos o conteúdo de cada um desses vetores.
Observe o conteúdo do quarto Vector v4. Como fornecemos ArrayList como seu argumento, o conteúdo de ArrayList se torna o conteúdo da v4.
Exemplo de vetor completo
Agora vamos implementar outro programa que irá demonstrar a criação de vetores, adicionando elementos e exibindo seu conteúdo.
import java.util.*; public class Main { public static void main(String args()) { //Create an empty Vector of even numbers Vector evenVector= new Vector (); //Add elements in the vector evenVector.add(2); evenVector.add(4); evenVector.add(6); evenVector.add(8); evenVector.add(10); evenVector.add(12); evenVector.add(14); evenVector.add(16); //Display the vector System.out.println('Vector evenVector contents: ' +evenVector); //delete the first occurence of an element 4 using remove method System.out.println('
Firstoccurence of element 4 removed: '+evenVector.remove((Integer)4)); //Display the vector System.out.println('
Vector contents after remove operation: ' +evenVector); //Remove the element at index 4 & display the vector System.out.println('
Remove element at index 4: ' +evenVector.remove(4)); System.out.println('
Vector contents after remove: ' +evenVector); //hashcode for the vector System.out.println('
Hash code of the vector = '+evenVector.hashCode()); //Get the element at index 1 System.out.println('
Element at index 1 is = '+evenVector.get(1)); } }
Resultado:
Vamos dar outro exemplo de vetor. Neste programa, iremos use um vetor de string . Manipulamos esse vetor adicionando elementos e depois imprimimos seu tamanho e capacidade.
import java.util.*; public class Main { public static void main(String args()) { // create a vector with initial capacity = 2 Vector fruits_vec = new Vector(2); //add elements to the vector fruits_vec.addElement('Grapes'); fruits_vec.addElement('Melon'); fruits_vec.addElement('Kiwi'); fruits_vec.addElement('Apple'); //print current size and capacity of the vector System.out.println('Vector Size: '+fruits_vec.size()); System.out.println('Default Vector capacity increment: '+fruits_vec.capacity()); //add more elements to the vector fruits_vec.addElement('Orange'); fruits_vec.addElement('Mango'); fruits_vec.addElement('Fig'); //print current size and capacity again System.out.println('Vector Size after addition: '+fruits_vec.size()); System.out.println('Vector Capacity after increment: '+fruits_vec.capacity()); //print vector elements Enumeration fruits_enum = fruits_vec.elements(); System.out.println('
Vector Elements are:'); while(fruits_enum.hasMoreElements()) System.out.print(fruits_enum.nextElement() + ' '); } }
Resultado:
Classificar um vetor
Você também pode classificar um vetor de acordo com uma ordem específica. Para classificar um vetor, você deve usar o método Collections.sort () do Java Collections Framework.
O exemplo a seguir mostra a classificação de vetores.
import java.util.*; public class Main { public static void main(String arg()) { //Create an empty vector Vector oddVector = new Vector(); //Add elements to the vector oddVector.add(1); oddVector.add(11); oddVector.add(7); oddVector.add(3); oddVector.add(5); //print the vector elements System.out.println('Vector elements: '+oddVector); //sort vector using Collections.sort method Collections.sort(oddVector); //print sorted vector System.out.println('Vector elements after sorting: '+oddVector); } }
Resultado:
O programa acima cria um vetor de números ímpares. Em seguida, usando o método Collections.sort (), o vetor é classificado.
Vetor 2D (bidimensional)
Um vetor 2d é um vetor que possui cada um de seus elementos como um vetor. Também pode ser denominado como 'Vetor de vetores'.
Um exemplo abaixo demonstra o vetor 2d.
import java.util.*; public class Main { public static void main(String args()) { //define and initialize a vector Vector inner_vec = new Vector(); inner_vec.add('Software'); inner_vec.add('Testing'); inner_vec.add('Java'); inner_vec.add('Tutorials'); //define another vector and add first vector to it. Vector outer_vec = new Vector(); outer_vec.add(inner_vec); String str; //display the contents of vector of vectors System.out.println('Contents of vector of vectors:'); for(int i=0;i Resultado:

No programa acima, temos um vetor de quatro elementos. Em seguida, declaramos outro vetor e adicionamos o vetor anterior como um elemento ao segundo vetor. Observe a maneira como os elementos do vetor são acessados. Do loop for, você pode concluir que o primeiro elemento do vetor externo (no índice 0) é o primeiro vetor ou vetor interno.
Assim, no loop, mantemos o índice do vetor externo como 0 e percorremos o vetor interno para exibir todos os elementos.
Converter vetor em matriz
Vamos considerar o seguinte exemplo de conversão de um vetor em uma matriz. Para converter um Vector em um Array, usamos o método ‘toArray’ da classe Vector.
No seguinte exemplo de programação , declaramos uma string Vector e adicionamos elementos a ela. Em seguida, usando o método toArray da classe Vector, convertemos o Vector em um array String passando o objeto do array string como argumento.
import java.util.Vector; public class Main { public static void main(String() args) { // Create a Vector of String elements Vector color_vector = new Vector(); // Add elements to Vector color_vector.add('Violet'); color_vector.add('Indigo'); color_vector.add('Blue'); color_vector.add('Green'); color_vector.add('Yellow'); color_vector.add('Orange'); color_vector.add('Red'); //Convert Vector to String Array using toArray method String() colorsArray = color_vector.toArray(new String(color_vector.size())); //print Array Elements System.out.println('String Array Elements :'); for(String val:colorsArray){ System.out.print(val + ' '); } } }
Resultado:

Vector vs Array
Listadas abaixo estão algumas das diferenças entre um vetor e uma matriz.
Vetor Variedade Reserva armazenamento adicional quando a capacidade é incrementada. Não reserva nenhum armazenamento adicional. O vetor é dinâmico e seu tamanho aumenta e diminui conforme os elementos são adicionados ou removidos. Os arrays são estáticos e seu tamanho permanece fixo depois de declarado. Os vetores podem armazenar apenas objetos. Os arrays podem armazenar tipos primitivos, bem como objetos. Ele fornece um método size () para determinar o tamanho. Fornece propriedade de comprimento para determinar o comprimento. Nenhuma dimensão conceitual, mas pode ser criada como um vetor de vetores, normalmente chamado de vetor 2d. As matrizes suportam dimensões. O vetor está sincronizado. A matriz não está sincronizada. O vetor é mais lento do que a matriz. Array é mais rápido. Garante a segurança de tipo, apoiando genéricos. Sem suporte genérico.
Vector vs ArrayList
Esta seção discute a diferença entre Vector e ArrayList em Java.
Vetor ArrayList O vetor tem tamanho de incremento usando o qual o tamanho do vetor pode ser aumentado. ArrayList não fornece tamanho de incremento. Presente desde a versão inicial do Java (versão JDK 1.0). Introduzido em Java desde JDK 1.2 Vector é uma classe legada de Java. ArrayList é uma parte do Java Collections Framework. O vetor cresce o dobro de seu tamanho quando sua capacidade é atingida. ArrayList cresce pela metade do tamanho quando sua capacidade é atingida. Os métodos vetoriais são sincronizados. ArrayList não está sincronizado. Vector usa Enumerator e Iterator para atravessar. ArrayList usa apenas Iterator. As operações de vetor são mais lentas. ArrayList é mais rápido. O vetor é seguro para threads, o que significa que o uso de vetores de vários threads é permitido e seguro. ArrayList não é seguro para threads.
perguntas frequentes
P # 1) O que é um vetor em Java?
Responda: Em Java, um vetor pode ser definido como uma matriz de objetos que pode ser aumentada. Semelhante aos arrays, os elementos do vetor também podem ser acessados por meio de índices.
P # 2) O vetor é pedido em Java?
Responda: sim. Um vetor é ordenado e mantém a ordem de inserção dos elementos.
P # 3) O Vector thread-safe em Java?
Responda: sim. Em Java, a classe Vector é thread-safe. Como a classe Vector é sincronizada, ela é segura para thread, ou seja, você pode usar a classe Vector de várias threads e é segura.
como adicionar um valor a um array
Q # 4) Por que usamos vetor em Java?
Responda: O motivo mais importante pelo qual o Vector é usado em Java é que um vetor aumenta e diminui automaticamente. Eles são dinâmicos por causa dos quais são preferidos aos arrays.
Q # 5) Qual é melhor - ArrayList ou vetor?
Responda: O ArrayList em termos de desempenho é mais rápido quando comparado ao Vector, pois o Vector é sincronizado e o torna mais lento.
Conclusão
Neste tutorial, começamos com a estrutura de dados Vector em Java. Os vetores são quase semelhantes a uma matriz na qual os elementos do vetor são acessados usando índices familiares. Os vetores são chamados de matriz dinâmica e, ao contrário das matrizes, o tamanho do vetor aumenta e diminui automaticamente.
Os vetores também têm recursos de capacidade e incremento que podem ser usados para criar e reservar armazenamento adicional para adições futuras. Vector é uma classe legada no pacote java.util de Java e é sincronizada e segura para thread.
Portanto, devemos preferir vetores quando precisamos de tamanho dinâmico e também enquanto estamos trabalhando em um ambiente multi-thread.
=> Visite aqui a série exclusiva de tutoriais de treinamento em Java.
Leitura recomendada
- Tutorial de JAVA para iniciantes: mais de 100 tutoriais práticos em vídeo Java
- Tutorial de reflexão Java com exemplos
- Interface Java e tutorial de classe abstrata com exemplos
- Jagged Array In Java - Tutorial com exemplos
- Tutorial de comprimento de array Java com exemplos de código
- Como classificar uma matriz em Java - Tutorial com exemplos
- Java 'this' Palavra-chave: Tutorial com exemplos de código
- Modificadores de acesso em Java - Tutorial com exemplos