Galera o que tem errado neste código?
É o seguinte. Nesta classe eu estou passando para o método abaixo o Vector da minha sessão e o código do próximo produto que deve ser inserido no Vector
O que eu quero?
Desejo verificar se o código que do novo produto está em algum objeto do vector, se estiver não posso deixar o novo produto ser inserido.
Por gentileza me ajudem.
A galera já andou me ajundando pra caramba e só está faltando isso. Para tudo funcionar.
Valeu e obrigado por sua atenção!
O CODIGO ABAIXO ESTÁ NA MINHA CLASSE ItensCompra
public boolean verificaElemento (Vector vector, int codigoProdutoItem)
{
boolean resultado = false;
if (vector.size() > 1)
{
elementos = vector.elements();
if (elementos != null)
{
while(elementos.hasMoreElements())
{
Produto prodIteracao = (Produto)elementos.nextElement();
if (Integer.parseInt(prodIteracao.getCodProd()) == codigoProdutoItem)
{
resultado = true;
break;
}
}
}
}
return resultado;
}
Seria uma idéia boa idéia fazer com que seu objeto Produto implemente o
método “equals(Object obj)”, que verifica criticas para definir se um objeto
Produto é igual à outro objeto.
Por exemplo:
class Produto {
private int codigo;
private String nome;
public int getCodigo() {
return this.codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getNome() {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public boolean equals(Object obj) {
if ((obj == null) || !(obj instanceof Produto)) {
return false;
}
Produto o = (Produto) obj;
return o.getCodigo() == this.getCodigo();
}
}
Tendo o método equals implementado em seu objeto, com a seguinte regra:
- Se um produto tiver o mesmo código do produto que ele está sendo comparado, são considerados iguais.
Com isso, dentro de um Vector, você tem um método chamado boolean contains(Object obj), que
verifica se o Objeto pessado no parâmetro esta dentro do Vector.
Mas uma alternativa melhor ainda, é não usar o Vector, e sim, utilizar classes da interface Set, porque
um set, não permite a inclusão de um elemento repitido em sua conjunto.
É isso, qq coisa tamos ae!!!
falow!!!
Valeu Alexandre, muito obrigado. Quando eu chegar em casa hoje à noite vou fazer o que disse.