Ir ao conteúdo
  • Cadastre-se

Carlos Armando Moreira

Membros Juniores
  • Total de itens

    1
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Olá, estou com um problema de ArrayList, eu criei ele e tudo mais, porém na hora que vou executar ele cai num loop infinito e não funciona o break do switch case. O programa tem um menu que exibe funções que podem ser realizadas. Eu executo e adiciono uma pessoa e fica em loop infinito, não vai para as outras funcionalidades, se puderem ajudar agradeço. CLASSE DA HERANÇA: package testepad; public abstract class Pessoa { protected String nome; protected int telefone; protected String endereco; protected String sexo; public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public int getTelefone() { return telefone; } public void setTelefone(int telefone) { this.telefone = telefone; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public String getSexo() { return sexo; } public void setSexo(String sexo) { this.sexo = sexo; } @Override public String toString() { return "Pessoa{" + "nome = " + nome + ", telefone = " + telefone + ", endereco = " + endereco + ", sexo = " + sexo + '}'; } } SUB CLASSES: package testepad; public class Juridica extends Pessoa{ private String CNPJ; public Juridica() { } public String getCNPJ() { return CNPJ; } public void setCNPJ(String CNP) { this.CNPJ = CNPJ; } } package testepad; public class Fisica extends Pessoa{ private String CPF; public Fisica() { } public String getCPF() { return CPF; } public void setCPF(String CPF) { this.CPF = CPF; } } CLASSE PRINCIPAL: (Onde ocorre o erro) package testepad; import java.util.ArrayList; import java.util.Scanner; public class TestePAD { public static void main(String[] args) { ArrayList<Fisica> fisicas = new ArrayList<>(); ArrayList<Juridica> juridicas = new ArrayList<>(); int opcao = 0; Scanner ler = new Scanner(System.in); System.out.println("----------- MENU (PF = Pessoa Física / PJ = Pessoa Jurídica) -----------"); System.out.println(" 1 - Adicionar PF "); System.out.println(" 2 - Adicionar PJ "); System.out.println(" 3 - Remover PF "); System.out.println(" 4 - Remover PJ "); System.out.println(" 5 - Alterar PF "); System.out.println(" 6 - Alterar PJ "); System.out.println(" 7 - Buscar PF "); System.out.println(" 8 - Buscar PJ "); System.out.println(" 9 - Exibir PF "); System.out.println(" 10 - Exibir PJ "); System.out.println(" 11 - Sair "); opcao = ler.nextInt(); do{ switch (opcao){ case 1: Fisica f = new Fisica(); System.out.println("Informe o nome da pessoa física: "); f.setNome(ler.next()); System.out.println("Informe o telefone: "); f.setTelefone(ler.nextInt()); System.out.println("Informe o endereço: "); f.setEndereco(ler.next()); System.out.println("Informe o sexo: "); f.setSexo(ler.next()); System.out.println("Informe o CPF: "); f.setCPF(ler.next()); fisicas.add(f); break; case 2: Juridica j = new Juridica(); System.out.println("Informe o nome da pessoa jurídica: "); j.setNome(ler.next()); System.out.println("Informe o telefone: "); j.setTelefone(ler.nextInt()); System.out.println("Informe o endereço: "); j.setEndereco(ler.next()); System.out.println("Informe o sexo: "); j.setSexo(ler.next()); System.out.println("Informe o CNPJ: "); j.setCNPJ(ler.next()); juridicas.add(j); break; case 3: fisicas.remove(0); break; case 4: juridicas.remove(0); break; case 5: System.out.println("Nome da pessoa física que deseja modificar: "); String nome = ler.next(); for(int i=0;i<fisicas.size();i++){ if(fisicas.get(i).getNome().equals(nome)){ Fisica f1 = new Fisica(); System.out.println("Novo nome: "); f1.setNome(ler.next()); System.out.println("Novo endereço: "); f1.setEndereco(ler.next()); System.out.println("Novo telefone: "); f1.setTelefone(ler.nextInt()); System.out.println("Novo sexo: "); f1.setSexo(ler.next()); System.out.println("Novo CPF: "); f1.setCPF(ler.next()); } } break; case 6: System.out.println("Nome da pessoa jurídica que deseja modificar: "); nome = ler.next(); for(int i=0;i<juridicas.size();i++){ if(juridicas.get(i).getNome().equals(nome)){ Juridica j1 = new Juridica(); System.out.println("Novo nome: "); j1.setNome(ler.next()); System.out.println("Novo endereço: "); j1.setEndereco(ler.next()); System.out.println("Novo telefone: "); j1.setTelefone(ler.nextInt()); System.out.println("Novo sexo: "); j1.setSexo(ler.next()); System.out.println("Novo CPF: "); j1.setCNPJ(ler.next()); } } break; case 7: System.out.println("Informe o nome da pessoa física para ser pesquisada: "); //OBS: PEDIA PARA PESQUISAR A PESSOA, MAS EU EXIBI também nome = ler.nextLine(); for(int i=0;i<fisicas.size();i++){ if(fisicas.get(i).getNome().equals(nome)){ System.out.println("------- Pessoa encontrada! -------"); System.out.println(fisicas.get(i).getNome()); System.out.println(fisicas.get(i).getEndereco()); System.out.println(fisicas.get(i).getTelefone()); System.out.println(fisicas.get(i).getSexo()); System.out.println(fisicas.get(i).getCPF()); } } break; case 8: System.out.println("Informe o nome da pessoa jurídica para ser pesquisada: "); //OBS: PEDIA PARA PESQUISAR A PESSOA, MAS EU EXIBI também nome = ler.nextLine(); for(int i =0;i<juridicas.size();i++){ if(juridicas.get(i).getNome().equals(nome)){ System.out.println("------- Pessoa encontrada! -------"); System.out.println(juridicas.get(i).getNome()); System.out.println(juridicas.get(i).getEndereco()); System.out.println(juridicas.get(i).getTelefone()); System.out.println(juridicas.get(i).getSexo()); System.out.println(juridicas.get(i).getCNPJ()); } } break; case 9: System.out.println("------- PESSOA FÍSICA -------"); System.out.println(fisicas); break; case 10: System.out.println("------- PESSOA JURÍDICA -------"); System.out.println(juridicas); break; case 11: break; } } while(opcao != 0); } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!