Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Código da aula não compila (Null pointer exception)

Estou seguindo a aula do video do cara e ele roda um código que deixa o eclipse de cabelo em pé, uma possível null pointer acess, que quando eu rodo gera uma null pointer exception. Isso acontece por volta de 16:00 do vídeo da aula 7.

todos os imports estão certos, toda a estrutura de classes esta certa.

Meu código:

    public List<Categoria> listaComProdutos() throws SQLException {
        List<Categoria> categorias = new ArrayList<>();

        Categoria ultima = null;

        String sql = "Select * from categoria as c join produto as p on p.categoria_id = c.id";
        try(PreparedStatement stmt = con.prepareStatement(sql)){
            stmt.execute();
            try(ResultSet rs = stmt.getResultSet()){
                while(rs.next()) {
                    int id = rs.getInt("id");
                    String nome = rs.getString("nome");
                    Categoria cate = new Categoria(id,nome);
        ERRO->    if (ultima != null || !ultima.getNome().equals(nome)) {
                        categorias.add(cate);
                    }
                    ultima = cate;
                }
            }
        }
        return categorias;
    }

Marquei a linha que teria o erro. Alguém pode me ajudar?

1 resposta
solução!

Oi Murilo, tudo bem?

O seu if está errado, o correto seria:

if(ultima==null || !ultima.getNome().equals(nome)) {