[RESOLVIDO]Ajuda com vetor

10 respostas
carlosaandrade

Pessoal,

estou com um problema e queria uma ajuda ( se puder srs)…

Eu tenho um Vetor memo[10] do tipo Object e eu gostaria de criar um metodo que informa-se quantos desses 10 campos estão sendo usados.

se alguém puder ajudar, fico grato.

Carlos Andrade

10 Respostas

marcelo.silva.java
Object[] vetor = new Object[10];
       vetor[0] = "marcelo";
       int cont = 0;
       for(int i = 0; i<vetor.length;i++){
           if(vetor[i] == null){
               cont++;
           }
       }
       
        System.out.println(cont);
    }

falou

carlosaandrade
marcelo.silva.java:
Object[] vetor = new Object[10];
       vetor[0] = "marcelo";
       int cont = 0;
       for(int i = 0; i<vetor.length;i++){
           if(vetor[i] == null){
               cont++;
           }
       }
       
        System.out.println(cont);
    }

falou

valeu cara, eu tinha feito algo parecido só que no

if(vetor[i]==null) eu colocava if(vetor[i]=="")

ai não ia dar certo mesmo, né srsrsr

muito obrigado

Abraço

marcelo.silva.java

lembrando…se foi resolvido…

coloque o post como resolvido…

[]s

Rodrigo_Sasaki

Pra um vetor de 10 posições você provavelmente não vai sentir diferença, mas pra algo um pouco mais flexível, é sempre interessante você ter uma referência pro próximo índice vazio do array (ou o último preenchido, tanto faz). Assim você consegue saber quantos estão preenchidos simplesmente buscando essa referência.

Se seu array fosse muito grande, percorrer ele todo toda vez que precisasse saber o tamanho seria muito custoso.

Mas de novo, no seu caso não faz diferença :slight_smile:

carlosaandrade

Rodrigo Sasaki:
Pra um vetor de 10 posições você provavelmente não vai sentir diferença, mas pra algo um pouco mais flexível, é sempre interessante você ter uma referência pro próximo índice vazio do array (ou o último preenchido, tanto faz). Assim você consegue saber quantos estão preenchidos simplesmente buscando essa referência.

Se seu array fosse muito grande, percorrer ele todo toda vez que precisasse saber o tamanho seria muito custoso.

Mas de novo, no seu caso não faz diferença :)

Rodrigo,

No eu usei no exemplo acima vetor[10] como exemplo…do que eu queria…mais meu exercicio é de vetor[100], você acha que já é um valor de registro alto para aplicar o que me explicou acima, usando referência?? e como eu consigo fazer isso… pode me ajudar??

carlosaandrade

marcelo.silva.java:
lembrando…se foi resolvido…

coloque o post como resolvido…

[]s

Obrigado, vou colocar!!

Rodrigo_Sasaki

Fica a seu critério. Você vai correr 100 índices tão rápido que nem vai ver, mas se for uma operação bastante utilizada vale a pena.

O conceito é simples, você vai usar esse número pra indicar onde no array vai adicionar o item.

Quando adicionar um item, incrementa 1
Quando remover um item, decrementa 1

carlosaandrade

Rodrigo Sasaki:
Fica a seu critério. Você vai correr 100 índices tão rápido que nem vai ver, mas se for uma operação bastante utilizada vale a pena.

O conceito é simples, você vai usar esse número pra indicar onde no array vai adicionar o item.

Quando adicionar um item, incrementa 1
Quando remover um item, decrementa 1

Isso é estrutura de dados né??? seria Pilha ou Fila dinamica ?

marcelo.silva.java
Long inicio = System.currentTimeMillis();
       Object[] vetor = new Object[99999999];
       vetor[0] = "marcelo";
       int cont = 0;
       for(int i = 0; i<vetor.length;i++){
           if(vetor[i] == null){
               cont++;
           }
       }
       
       Long fim = System.currentTimeMillis();
       
       Long tempoGasto = fim - inicio;
      
       
        System.out.println(cont + "\n" + tempoGasto);
Rodrigo_Sasaki

Essa técnica pode ser usada sim na implementação de algumas estruturas de dados, mas no seu caso é só uma maneira mais rápida de saber quantos itens você tem na lista

Criado 11 de abril de 2013
Ultima resposta 11 de abr. de 2013
Respostas 10
Participantes 3