1
resposta

[Sugestão] Minha solução do Menu do Desafio do Api do Cep

Criei uma solução para menu que tem um while que pede o cep e tambem criei um array List que armazena os ceps e gera um arquivo json tambem criei no try cath um fanally que mesmo se da um erro o programa continua.

public class Menu {
    private int opcao = 0;
    ConexaoDb conexaoDb = new ConexaoDb();
    Scanner leitura = new Scanner(System.in);

    public Menu() throws IOException {
        inciar();
    }

    private void menu() {
        System.out.println("*************************************");
        System.out.println("Sejá bem vindo ao Buscador de Endereço");
        System.out.println("""
                ** Digite a opção **
                 1- Buscar seu endereço
                 2- SAIR
                """);
        System.out.println("********Digite a Opçao valida*******");
        System.out.println("*************************************");
    }

    private void inciar() throws IOException {

      try {
          while (opcao != 2) {
              menu();
              opcao = Integer.parseInt(leitura.nextLine());
              if (opcao == 2) {
                  break;
              } else if (opcao < 1 || opcao > 2) {
                  System.out.println("Opção Inválida");
              } else {
                  System.out.println("Digite seu Cep");
                  var endereco = leitura.nextLine();
                  Cep ceps = conexaoDb.consultar(endereco);
                  CepJson gerador = new CepJson();
                  List<Cep> listaEnd = new ArrayList<>();
                  listaEnd.add(ceps);
                  gerador.endJson(listaEnd);
                  System.out.println(listaEnd);

              }
          }
      }catch (RuntimeException e){
          System.out.println(e.getMessage());
          System.out.println("Finalizar o Programa");
      }finally {
          while (opcao != 2) {
              menu();
              opcao = Integer.parseInt(leitura.nextLine());
              if (opcao == 2) {
                  break;
              } else if (opcao < 1 || opcao > 2) {
                  System.out.println("Opção Inválida");
              } else {
                  System.out.println("Digite seu Cep");
                  var endereco = leitura.nextLine();
                  Cep ceps = conexaoDb.consultar(endereco);
                  CepJson gerador = new CepJson();
                  List<Cep> listaEnd = new ArrayList<>();
                  listaEnd.add(ceps);
                  gerador.endJson(listaEnd);
                  System.out.println(listaEnd);

              }
          }
      }
        System.out.println("Obrigado por usar este Programa! :)");
        leitura.close();

    }

}
1 resposta

Olá Ruan! Tudo bem?

Parabéns por compartilhar sua solução para o menu do desafio da API do CEP! É sempre interessante ver como diferentes pessoas abordam o mesmo problema e desenvolvem suas próprias soluções.

Continue explorando e experimentando diferentes abordagens, isso é essencial para o crescimento no campo da programação!

Bons estudos!