Estou com um problema. Tenho um mapa, que possui os multiplos de vários números que foram lidos em um arquivo… os multiplos encontrados de 2 por exemplo, são armazenados em um Set.
O arquivo consulta me informar qual número vou consultar os multiplos.
Assim, na variável ‘num’ eu armazeno o número que irei procurar seus múltiplos. Armazenando lá, eu vou pegar os multiplos mapeados e colocá-los no Set ‘multiplos’, para usar o iterator e imprimir.
Onde está o comentário está o erro, está dando java.lang.NullPointerException. Deveria imprimir algum número, mesmo que fosse zero, porém dá pala. Alguém pode me ajudar?
[code]public static void consulta(Map<Integer,Set> mapa)throws Exception {
Scanner consulta = new Scanner (new File(“consulta.txt”));
FileWriter saida = new FileWriter (new File(“saida.txt”));
int num;
Set<Integer> multiplos = new HashSet<Integer>();
Iterator<Integer> setIt = multiplos.iterator();
for(int i = 0; consulta.hasNextLine() ; i++){
num = Integer.parseInt(consulta.nextLine());
multiplos = mapa.get(num);
System.out.print(multiplos.size()); // erro
saida.write(num + ":");
for(int j = 0; setIt.hasNext() ; j++){
if(j + 1 == multiplos.size())
saida.write(setIt.next());
else
saida.write(setIt.next() + ",");
}
saida.write("\r\n");
}
saida.flush();
saida.close();
}
[/code]