Boas, colegas! Gostaria de saber se é possível verificar se uma variável do tipo int recebeu um valor String antes de disparar a exceção java.util.InputMismatchException? Sabendo que ela terá que dar continuidade ao programa após ter efeito o teste a variável. Tentei usar o try catch mas não deu certo tive que trocar o tipo de variável de int para string.
Obrigado
Como verificar se uma variável do tipo Int recebeu um valor String invés de um inteiro
1 Resposta
1 like
Vc poderia usar try/catch junto com um loop infinito, veja:
import java.util.Scanner;
public class App {
private static final Scanner scan = new Scanner(System.in);
private static int getInt() {
while (true) {
System.out.print("Digite um número inteiro: ");
try {
return Integer.parseInt(scan.nextLine());
} catch (NumberFormatException e) {
System.out.println("Tem que ser número inteiro!!! 😡");
}
}
}
public static void main(String... args) {
System.out.println("Você digitou: " + getInt());
}
}
Criado 2 de setembro de 2021
Ultima resposta 2 de set. de 2021
Respostas 1
Participantes 2
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo