Boa tarde pessoal, estou com dúvidas na implementação do seguinte código:
publicvoidregistroAnterior()throwsSQLException{sent=conexao.prepareStatement("SELECT codigoMercadoriaServico, quantidade FROM registro74 WHERE idEmpresa=? AND dataInventario LIKE ?");sent.setObject(1,1);// int dataAnterior = Integer.parseInt(data.getText())-1;sent.setObject(2,2009+"%");ResultSetrs=sent.executeQuery();while(rs.next()){anoAnterior.put(rs.getString("codigoMercadoriaServico").trim(),rs.getString("quantidade").trim());}}
lembrando que anoAnterior é minha TreeMap declarada como global!
SortedMap<String, String> anoAnterior = new TreeMap<String, String>();
o println mostra os valores, mas a linha abaixo da nullpointer
converti para float para fazer umas contas necessárias. na coluna da tabela mostra tudo zero!!! o que pode ser? alguém ja passou por isso? e pode me ajudar?
Você não imaginou que pode ser que você não ache o resultado de rs.getString (“codprod”) no SortedMap, ou então que rs.getString (“codprod”) seja null?
É melhor fazer alguns ifs.
Nunca achei que escrever uma linha gigante, encadeando uma chamada de função na outra, fosse uma boa coisa em Java.
vai gerar um NullPointerException no “trim” ou no parseFloat, e então você vai ter o resultado de ter a coluna em branco, já que o processamento das outras linhas vai ser pulado e ele não vai conseguir preencher o resto da tabela.
Outra coisinha - não é bom usar float ou Float em programas (exceto em casos especiais). Se precisar mexer com números, use double, int ou long (dependendo do número, é claro).
E
Eduardo_Nunes
entanglement:
Você não imaginou que pode ser que você não ache o resultado de rs.getString (“codprod”) no SortedMap, ou então que rs.getString (“codprod”) seja null?
É melhor fazer alguns ifs.
Nunca achei que escrever uma linha gigante, encadeando uma chamada de função na outra, fosse uma boa coisa em Java.
vai gerar um NullPointerException no “trim” ou no parseFloat, e então você vai ter o resultado de ter a coluna em branco, já que o processamento das outras linhas vai ser pulado e ele não vai conseguir preencher o resto da tabela.
Outra coisinha - não é bom usar float ou Float em programas (exceto em casos especiais). Se precisar mexer com números, use double, int ou long (dependendo do número, é claro).