Inserir dados em um array

2 respostas
M

Boa noite, eu preciso inserir um produto no meu array, respeitando algumas regras. O produto deve ser inserido na próxima posição livre do array. O método deve devolver um código indicando o resultado:
1 - Se há espaço.
2 - Se um produto já existe.
3 produto inserido com sucesso.

Ficaria como? O meu método está assim...
public int insereProduto(int novoProduto){
        for(int i = 0; i<pro.length; i++)
            if(pro[i] >= pro.length){
                return 1;
            }else if(estaNatabela(novoProduto)){
                return 2;
             }else{ 
                return 3;           
            }
       
   }

2 Respostas

Paul_Anderson

Boa noite.

Nesse caso melhor usar alguma das coleções java.

Com o java.util.ArrayList poderia fazer algo do tipo:

//instanciando a coleção
java.util.ArrayList produtos = new java.util.ArrayList();

//adcionar um novo produto

produtos.add(laranja);

produtos.add(abacate);

//retorna o tamanho do objeto
produtos.size();

//retorna o objeto em um indice
produtos.get(int i);

//retorna true se o objeto existir na coleção
produtos.contains(“laranja”);

//remove o item no indice i
produtos.remove(int i);

Você pode usar a coleção para qualquer objeto, mas para que ela funcione corretamente vai ter que implementar o método equals em sua classe.

Boa noite.

fabiocortolan

Se vc não for obrigado a utilizar um vetor, faça como disse o Paul Anderson e use uma lista, nesse caso a primeira pergunta já está resolvida. Se for obrigado a utlizar um vetor com tamanho fixo, faça o seguinte:

1 - Se há espaço - percorra o vetor com laço “for” verificando se está ou não preenchido.
2 - Se um produto já existe - novamente percorra o vetor verificando se o produto está em algum ponto do vetor, dependendo da forma como for implementado vc pode aproveitar um laço de cima e fazer apenas um.
3 - produto inserido com sucesso. - isso é uma pergunta? Se sim, crie uma variável boolean, sete como “true” e caso uma das duas situações acima ocorra, sete a variável como false, qdo finalizar a inserção do produto verifique o valor da variável.

Criado 27 de junho de 2013
Ultima resposta 28 de jun. de 2013
Respostas 2
Participantes 3