Problemas com vetores dinâmicos

5 respostas
NapoCoelho

Iai galerinha java, estou tendo um problema com as listas dinâmicas. Não sei se é por falta de atenção minha, mas não estou conseguindo expandir minhas listas criadas. Tentei as classes Vector e ArrayList mas ao tentar expandi-las não expandem da forma correta, pois, acontece o seguinte:

lista criada(5 posições) -> [1, 2, 3, null, null]
depois de expandi-la -> [2, 3, null, null, null, null]

o vetor criado é de 5 posições. Quando eu tento acrescentar 1 posição, ele copia todos os índices para 1 posição a menos e acrescenta 2 posições nulas no final, ficando assim com 6 posições! Eu uso o JDK 1.3.1. Alguém poderia me dizer o q está acontecendo?

5 Respostas

Luca

Olá

Mostre o código pois o erro está lá.

[]s
Luca

NapoCoelho

Sim, ainda não achei o erro mas, para testar eu criei um vetor dinâmico aqui e deu o mesmo problema. Valeu ai e desculpa pela perca de tempo, hehe. Abração!!

Rafael_Steil

Como vc fazendo? poste o codigo… O que seria “expandir” ? Vector e ArrayList vai crescendo automaticamente a medica que vc adiciona objetos…

Rafael

Ironlynx
NapoCoelho,qual o problema em si?A lista cresce(dinamicamente) a medida q for inserindo elementos....exemplo:
import java.util.*;

public class Java{
	public static void main(String []args){
		 List l=new ArrayList(3);
		 l.add("Napo Coelho");
		 l.add("Luca");
		 l.add("Rafael");
		   Iterator iter=l.iterator();
          for(int i=0;i<3;i++)
            System.out.println(iter.next()+"\n");
            
          l.add("Ironlynx"); //tô expandindo a lista
            System.out.println(l);//chamada a toString e imprime todos os elementos  
            
          Vector v=new Vector(3);
           v.add("Napo Coelho");
           v.add("Luca");
           v.add("Rafael");
           
             Iterator it=v.iterator();
             while(it.hasNext())
               System.out.println(it.next()+"\n");
               
             v.add("Ironlynx");//tô expandindo a lista
               System.out.println(v);   
                 
                       
            
		 }
	}
NapoCoelho

Iai IronLynx! Bem, o problema está na implementação das listas. A forma com que eu estava usando o vetor estava certa, chequei aqui e realmente está certa. Estou fazendo um esqueminha simples mesmo de cadastro com botões tipo “Add”, “Remove”, “Next”, “Previous”. O problema é que não estou achando onde está o meu erro. Outro problema é que se eu colocar o código aqui, vai ficar muito grande. Se o defeito fosse nos Arrays, seria fácil de colocar o código aqui. Vou ver se faço aqui tudo novamente. Isto costuma funcionar, hehe(pelo menos funcionava em C)… Mas obrigado pela atenção de todos aí.

Criado 10 de fevereiro de 2004
Ultima resposta 12 de fev. de 2004
Respostas 5
Participantes 4