pessoal , to com uma duvida. Quando utilizo um vector, por exemplo, e adciono nele por exemplo 20 objetos, apos adciona-los o certo seria que ele tivesse 19 posições . Mas debugando o codigo vi que são criadas varias outras posições com o valor null. O mesmo ocorre no ArrayList .
Porém … quando utilizo o metodo Arraylist.trimToSize(); O ARRAY FICA REALMENTE COM A QUANTIDADE DE POSIÇÕES QUE EU INSERI.
FAZENDO A MESMA COISA NO VECTOR(Vector.trimToSize()) O MESMO NAO OCORRE !
PQ O VECTOR NÃO ADIMITE A QUANTIDADE DE POSIÇÕES QUE EU INSERI ?
Vector / ArrayList
5 Respostas
nunca vi isso acontecendo !
qual a versão do j2sdk que vc tem ?
hah, teria como postar o código de teste que vc fez para ferificar isso ? só pra ver se naum é algo do código !
Abrço,
Maicon
É normal porque um vector adiciona uma quantidade X de posições de uma só vez para ficar mais rápido, mas dá para alterar isto na criação do Vecto é só criálo sem argumentos ou passar o número 1 como arguento.
A classe Vector só não ficou deprecated para manter a compatibilidade com quem já usava. O que recomendo mesmo é usar ArrayList, já que a funcionalidade é a mesma.
ArrayList ainda traz um adendo que é a “não sincronização”, o que o torna mais rápido. A classe Vector, impacta na performance, quando existe a possibilidade de se usar paralelamente a inserção de elementos…
A classe Vector só não ficou deprecated para manter a compatibilidade com quem já usava. O que recomendo mesmo é usar ArrayList, já que a funcionalidade é a mesma.
ArrayList ainda traz um adendo que é a “não sincronização”, o que o torna mais rápido. A classe Vector, impacta na performance, quando existe a possibilidade de se usar paralelamente a inserção de elementos…
Realmente o arrayList nao é sincronizado, e oVector sim, porem o ArrayList é mais rapido, mas pr determinadas siituacoes e mais segura usar Vector. :lol:
Como comentei: Se não for fazer acesso paralelo ao array, vale a pena o uso de ArrayList.
Traduzindo o que quero dizer com Acesso paralelo, seria a inserção de dois elementos exatamente no mesmo momento. Isso acontece quando há uso de socket (com vários clientes) integrado com o uso de Threads.
Ratificando o que disse Vector tem o seu lugar e não pode ser deprecated… :oops:
Att