e-lucia 0 Denunciar post Postado Março 8, 2011 Pessoal, alguem sabe me dizer por que dá erro qdo tento utilizar o catch(java.io.IOException)? segue o codigo. obrigada. import java.io.*; import java.io.IOException; import java.util.Scanner; public class Tentativa { public static void main(String[] args) { Scanner scan = new Scanner (System.in); int valor; try { System.out.println ("Digite o valor da venda: "); valor = scan.nextInt(); } catch(java.io.IOException){ valor = 0; } System.out.println ("Valor da Venda = "+ valor + ",00"); if (valor > 10.0) valor = valor * 90 /100; System.out.println("Valor Total com Desconto = "+ valor + ",00"); } } Compartilhar este post Link para o post Compartilhar em outros sites
Giovanni Ritchie 0 Denunciar post Postado Março 8, 2011 Porque nenhum codigo dentro do try gera um IOException O metodo Scanner.nextInt() pode gerar as seguintes excecoes: InputMismatchException NoSuchElementException IllegalStateException Nenhum delas eh subclass(filha) de IOException e tbm nao sao verificadas, ou seja, o compilador nao exige que seja capturadas... Dah uma olhada na documentacao e veja quando cada uma delas eh gerada, e escolha qual delas serve para o seu algoritmo! Abraco.. Compartilhar este post Link para o post Compartilhar em outros sites
e-lucia 0 Denunciar post Postado Março 8, 2011 Porque nenhum codigo dentro do try gera um IOException O metodo Scanner.nextInt() pode gerar as seguintes excecoes: InputMismatchException NoSuchElementException IllegalStateException Nenhum delas eh subclass(filha) de IOException e tbm nao sao verificadas, ou seja, o compilador nao exige que seja capturadas... Dah uma olhada na documentacao e veja quando cada uma delas eh gerada, e escolha qual delas serve para o seu algoritmo! Abraco.. Obrigada, Giovanni. Usei o InputMismatchException e rodou certinho. Compartilhar este post Link para o post Compartilhar em outros sites