Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Método podeDarLance não compila

Boa tarde! Fiz igual o instrutor, porém o método podeDarLance não está compilando. Está dando o seguinte erro: "The operator && is undefined for the argument type(s) boolean, int". Alguém poderia me ajudar por favor? Agradeço desde já.

3 respostas

Boa tarde João, beleza?

Poderia demonstrar como está o seu código para conseguirmos te auxiliar?

Aguardo seu retorno!

Minha classe Leilão:

package br.com.caelum.leilao.dominio;

import java.util.ArrayList; import java.util.Collections; import java.util.List;

public class Leilao {

private String descricao;
private List<Lance> lances;

public Leilao(String descricao) {
    this.descricao = descricao;
    this.lances = new ArrayList<Lance>();
}

public void propoe(Lance lance) {
    if (lances.isEmpty() || podeDarLance(lance.getUsuario())) {
        lances.add(lance);
    }
}

private boolean podeDarLance(Usuario usuario) {
    return !ultimoLanceDado().getUsuario().equals(usuario) && qtdDeLancesDo(usuario);
} 

private int qtdDeLancesDo(Usuario usuario) {
    int total = 0;
    for (Lance l : lances) {
        if (l.getUsuario().equals(usuario))
            total++;
    }
    return total;
}

private Lance ultimoLanceDado() {
    return lances.get(lances.size() - 1);
}

public String getDescricao() {
    return descricao;
}

public List<Lance> getLances() {
    return Collections.unmodifiableList(lances);
}

}

solução!

Eu consegui resolver Matheus, faltava um < 5 no final da linha que tinha ficado difícil de ver na aula, após rever consegui encontrar meu erro. Obrigado mesmo assim.