Oi, Antonio.
O problema da classe Vector � que ela n�o � exatamente din�mica. Ela se
baseia em arrays est�ticos, com uma boa vantagem. Bem, o vetor fica com uma
capacidade inicial, que � o tamanho do array que ele cria. Quando voc� d� um
addElement no vetor, ele coloca no array, at� que sua capacidade estoura. A�
ele cria um novo array com tamanho igual � do anterior mais um valor de
incremento, e ent�o copia os dados, ou melhor, as refer�ncias, do array
antigo para o novo, e ent�o descarta o antigo.
Isto � otimo, resolve muitos problemas, mas essa tarefa de "muda" � muito
onerosa. A id�ia �, se voc� muda muito o conte�do de sua lista, fa�a mesmo
uma lista encadeada, com os "ponteiros", tudo certinho.
No seu exemplo, voc� deu um super(1,1), o que significa que c� cria um array
inicial de tamanho 1, e o incremento � de valor 1 tamb�m. Fica horr�vel sob
o ponto de vista de performance, porque ele faz a "muda" a cada vez que voc�
insere um novo elemento. Coloque par�metros mais generosos, voc� perde
espa�o muitas vezes mas o pre�o sempre vale. N�o seja p�o-duro :)
Leo.
----Original Message Follows----
From: "Antonio Carlos A. da Silva" <[EMAIL PROTECTED]>
To: "Leonardo Pacheco" <[EMAIL PROTECTED]>,
<[EMAIL PROTECTED]>
Subject: Re: LISTAS DIN�MICA?
Date: Tue, 14 Mar 2000 00:47:09 -0800
Caros amigos,
Aqui vai um bom exemplo da utiliza��o da classe Vector.....
N�o tive tempo de criar um exemplo q utilize collections.... mas em breve,
quando tiver um tempinho eu mando.....
-----Mensagem original-----
De: Leonardo Pacheco <[EMAIL PROTECTED]>
Para: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Data: Segunda-feira, 13 de Mar�o de 2000 12:17
Assunto: Re: LISTAS DIN�MICA?
>Java possui ponteiro. Toda vez que voc� usa uma vari�vel que n�o seja de
um
>dos tipos b�sicos (int, char, boolean, ...), voc� tem que usar ponteiro. A
>vari�vel cont�m uma refer�ncia a um objeto. A diferen�a � que tudo � feito
>de forma impl�cita. Segue um exemplo:
>
>
>class Elemento
>{ Elemento prox;
> Object valor;
>}
>
>
>------- ------- -------
>|prox |------->|prox |------->|prox |-----------
>|valor| |valor| |valor| |
>---|--- ---|--- ---|--- ---V---
> V V V -----
>object1 object2 object3 ---
>
>Para os m�todos de acesso � lista, voc� pode criar uma classe list
>encapsulando tudo ou mesmo fazendo tudo nesta classe, colocando os
atributos
>private.
>
>Voc� pode tamb�m aproveitar a classe java.util.Vector, embora um Vector
n�o
>seja exatamente din�mico, ou, caso esteja usando a vers�o 1.2.x da
>linguagem, utilizar as collections. D� uma olhada no tutorial da Sun.
>
>At� mais.
>Leo.
>
>
>
>----Original Message Follows----
>From: Alessandro Caetano <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED]
>Subject: LISTAS DIN�MICA?
>Date: Mon, 13 Mar 2000 13:41:12 -0300 (ART)
>
>Amigos, estou aprendendo Java na marra com �s
>apostilas da Sum. Gostaria de saber como eu uso a API
>list(), � ela que me permiti a criar uma lista
>dinamica na memoria? Exite outro comando para criar
>lista dinamica na mem�ria, ja que n�o existe ponteiros
>na linguagem...
>
>Obrigados amigos
>
>Alessandro Caetano
>
>___________________________________________________________________________
_
>YAHOO! BATE-PAPO
>Conhe�a gente nova, fa�a amigos e divirta-se! - http://www.yahoo.com.br
>* Para nao receber mais e-mails da lista, acesse
><http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu
e-mail,
>escolha a lista <[EMAIL PROTECTED]> e de um <submit>.
>
>______________________________________________________
>Get Your Private, Free Email at http://www.hotmail.com
>
>* Para nao receber mais e-mails da lista, acesse
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail,
escolha a lista <[EMAIL PROTECTED]> e de um <submit>.
>
<< MyVector.java >>
______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
* Para nao receber mais e-mails da lista, acesse
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, escolha a
lista <[EMAIL PROTECTED]> e de um <submit>.