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

Explicação do código das classes modelo

Poderia me explicar o código abaixo ? Estou fazendo a formação spring mas não lembro desse código. Eles aparecem nas classes curso, resposta... (do arquivo modelo que foi disponibilizado)

public class Resposta {

private Long id;
private String mensagem;
private Topico topico;
private LocalDateTime dataCriacao = LocalDateTime.now();
private Usuario autor;
private Boolean solucao = false;

// Essa parte abaixo não entendi @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((id == null) ? 0 : id.hashCode()); return result; }

@Override
public boolean equals(Object obj) {
    if (this == obj)
        return true;
    if (obj == null)
        return false;
    if (getClass() != obj.getClass())
        return false;
    Resposta other = (Resposta) obj;
    if (id == null) {
        if (other.id != null)
            return false;
    } else if (!id.equals(other.id))
        return false;
    return true;
}
2 respostas

Oi Aires,

Você diz os métodos equals e hashCode?

São métodos herdados da classe Object e servem para realizar a comparação de objetos. As collections do Java que costumam utilizar esses métodos.

A implementação mostrada no curso na verdade foi gerada automaticamente pela IDE.

Aqui nessa aula do curso de Collections você aprende os detalhes desses métodos: https://cursos.alura.com.br/course/java-collections/task/14203

solução!

Grato, Rodrigo !