Olá amigos,
Estou com um problema que não consigo resolver de jeito nenhum, por isso vim aqui!
Acho que ele é até simples, mas não tá saindo :(
Na hora que lanço uma exceção, gostaria que o programa não parasse (quando é digitado um valor inválido). Quando fosse inserido algo que a exceção pegue, ele volta com uma mensagem pedindo para o usuário digitar novamente.. A questão é que já tentei colocar vários loops, e tudo sem sucesso.
Se alguem puder me ajudar, por favor, aprender na raça é teeenso!
Desde já agradeço!
Aqui está a parte do código, que me refiro:
public static void cadastrarPessoa() throws CPFInvalidoException{
int opcao;
do{
System.out.print("Deseja cadastrar uma pessoa do tipo Fisica ou Juridica(Digite 1 para Fisica e 2 para Juridica)? ");
opcao = Integer.parseInt(scan.nextLine());
}while(opcao!=1&&opcao!=2);
if(opcao==1){
PessoaFisica pessoa = new PessoaFisica();
try {
System.out.print(PROMPT_NOME);
pessoa.setNome(scan.nextLine());
} catch(IllegalArgumentException e) {
System.out.print("O seguinte erro ocorreu: "+e.getMessage());
}
/*
* Bloco que serve para tratar a exceção do cpf
*/
try {
System.out.print(PROMPT_CPF);
pessoa.setCpf(scan.nextLine());
} catch (CPFInvalidoException e) {
System.out.print("Seguinte erro ocorreu: "+e.getMessage());}
O cpf está validado da maneira que queria, só preciso mesmo é colocar um loop pra ele ver o erro, e aparecer "digite novamente o cpf"
Tentei colocar um 'boolean testa = true', mas sem sucesso.
Alguem poderia me dar uma luz?
Desde já agradeço.
é nois
