Vector nao eh vetor… Vector eh uma estrutura de dados do Java, muito parecido com o ArrayList. Alias, voce deveria usar ArrayList ao inves de Vector.
Voce usa Iterator para navegar pelos dados da collection. O retorno de uma chamada ao metodo next() do iterator depende do conteudo do teu vector / list. Se voce adicionou objetos do tipo Pessoa, sera retornado objetos do tipo Pessoa… se adicionou String, sera retornado String.
Faca um teste com iterator… vc soh vai aprender o funcionamento testando mesmo.
Rafael
Ironlynx
Vector eh sincronizado,por isso eh mais lento do que list.Lambrando tb q vc pode sincronizar a List.(prefiro essa opção a usar Vector).Olha o Iterador trabalhando(exemplinho básico):
O problema que eu achei é que vc nao pode mexer no objeto que tá sendo “iterado”. Por exeplo, querer remover o indice 10 se vc estiver no indice 9. Num dá E tb num dá pra continuar de um certo ponto.
cv1
Bruno, por isso voce tem metodos como o remove() nos Iterators.
rvaldomiro
Esta eu não sabia. Qual a diferença básica entre o ArrayList e o Vector e o porque de usar um ao invés do outro :?:
caiofilipini
A diferença principal é essa.
[]'s
Operador_Nabla
Eu também estou brincando com Iterators (ou melhor, ListIterators) em casa (estou pegando algumas aplicações em C++ e traduzindo para Java, como parte do meu aprendizado) e eu percebi uma coisa: o retorno dos métodos next() e previous() é um objeto genérico do tipo Object. Para que eu possa tratá-lo como um objeto do tipo que eu armazenei na minha coleção, tenho que aplicar um casting sobre a saída do next()/previous(), convertendo para o tipo que eu armazenei (eu, particularmente, acho isso nojento, pois não é difícil perder o controle sobre o tipo que está armazenado na coleção; por isso, eu espero ansiosamente pelas futuras implementações de classes parametrizadas).
É assim mesmo ou tem jeito melhor de se fazer isto?