Boa tarde galera, tenho um código com as classes abaixo, tenho um vetor de contas dentro da classe Pessoa, na classe principal eu tenho uma opção para criar conta, onde o usuário digita seu cpf e outros dados da conta, como posso fazer para relacionar a pessoa que tem o cpf que foi digitado com a conta e adicionar a conta no vetor?
Classe Principal:
import java.util.Scanner;
public class Principal {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int op;
Banco banco = new Banco();
do {
System.out.println("1 - Cadastrar pessoa");
System.out.println("2 - Criar conta");
System.out.println("3 - Verificar dados pessoais");
System.out.println("4 - Extrato da Conta");
System.out.println("Escolha uma Opcao:");
op = scan.nextInt();
scan.nextLine();
Pessoa p;
Conta c;
switch (op) {
case 1:
System.out.println("Digite seu Nome: ");
String nome = scan.nextLine();
System.out.println("Digite sua Data de Nascimento: ");
String dtn = scan.nextLine();
System.out.println("Digite seu Sexo: ");
String sexo = scan.nextLine();
System.out.println("Digite seu CPF: ");
String cpf = scan.nextLine();
p = new Pessoa();
p.setNome(nome);
p.setDtn(dtn);
p.setSexo(sexo);
p.setCpf(cpf);
banco.addPessoa(p);
break;
case 2:
System.out.println("Digite seu CPF: ");
String cpf = scan.nextLine();
System.out.println("Digite uma Senha para a conta: ");
int senha = scan.nextInt();
System.out.println("Digite o Numero da conta: ");
int numero = scan.nextInt();
System.out.println("Digite o Saldo para conta: ");
double saldo = scan.nextDouble();
System.out.println("Digite a Agencia da conta: ");
int agencia = scan.nextInt();
break;
case 3:
banco.infoPessoa();
break;
case 4:
banco.infoConta();
default:
if (op == 0) {
System.out.println("Programa Encerrado");
} else {
System.out.println("Opcao Inválida");
}
break;
}
} while (0 != op);
}
}
Classe pessoa:
public class Pessoa {
private String nome;
private String dtn;
private String sexo;
private String cpf;
private Conta [] contas = new Conta[100];
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDtn() {
return dtn;
}
public void setDtn(String dtn) {
this.dtn = dtn;
}
public String getSexo() {
return sexo;
}
public void setSexo(String sexo) {
this.sexo = sexo;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
/public Conta[] getContas(){
return contas;
}
public void setContas(Conta[] con){
this.contas = contas;
}
public String infoPessoa() {
return "\nNome: " + nome +
"\ndtn: " + dtn +
"\nSexo: " + sexo +
"\nCPF: " + cpf+"\n";
}
}
Classe conta:
public class Conta {
private double saldo;
private int senha;
private int numero;
private int agencia;
public double getSaldo() {
return saldo;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
public int getSenha() {
return senha;
}
public void setSenha(int senha) {
this.senha = senha;
}
public int getNumero() {
return numero;
}
public void setNumero(int numero) {
this.numero = numero;
}
public int getAgencia() {
return agencia;
}
public void setAgencia(int agencia) {
this.agencia = agencia;
}
//public depositar(double valor){
//this.saldo += valor;
// }
public String infoConta() {
return "\nNumero da Conta: " + numero +
"\nAgencia: " + agencia +
"\nSaldo da Conta: " + saldo +"\n";
}
}
Classe banco:
import java.util.Scanner;
public class Banco {
Scanner scan = new Scanner(System.in);
private int qtdP = 0;
private Pessoa[] pessoas = new Pessoa[100];
public int tamanhoPessoa() {
return this.qtdP;
}
public void addPessoa(Pessoa c) {
this.pessoas[qtdP] = c;
qtdP++;
System.out.print("Cadastro Realizado com Sucesso!\n\n");
}
public void infoPessoa() {
System.out.println("Digite o CPF para buscar: ");
String busca = scan.nextLine();
Pessoa buscaPessoa = null;
for (int i = 0; i < this.tamanhoPessoa(); i++) {
Pessoa p = pessoas[i];
if (p.getCpf().equals(busca)) {
buscaPessoa = p;
break;
}else{
buscaPessoa = null;
}
}
if (buscaPessoa == null) {
System.out.println("\nCliente não foi encontrado\n");
} else {
System.out.println("\nInformações do Cliente:\n"+buscaPessoa.infoPessoa());
}
}
}