He estado desarrollando el ejecicio junto al docente en cada leccion y todo bien, hasta que llegue a la primera clase de INNER JOIN, donde estoy obteniendo un error en la funcion filter filter(cat -> cat.getId().equals(categoriaId))
, no reconoce la funcion equals
, dejo el codigo que tengo para mayor detalle:
public List<Categoria> listarConProductos() {
List<Categoria> categorias = new ArrayList<>();
try {
final PreparedStatement statement = con.prepareStatement(
"SELECT c.id, c.nombre, p.id, p.nombre, p.cantidad FROM categoria c INNER JOIN producto p ON c.id = p.categoria_id"
);
try(statement) {
final ResultSet resultSet = statement.executeQuery();
try(resultSet) {
while (resultSet.next()) {
int id = resultSet.getInt("id");
String nombre = resultSet.getString("nombre");
var categoria = categorias
.stream()
.filter(cate -> cate.getId().equals(id)) // El error aquí
.findAny()
.orElseGet(() -> {
Categoria cat = new Categoria(id, nombre);
categorias.add(cat);
return cat;
});
}
}
}
return categorias;
} catch (SQLException e) {
throw new RuntimeException(e);
}
}