Boa tarde pessoal, estou fazendo o exercicio 10 do capito 7 da caelum vou postar o que fiz:
O que ocorre é o seguinte na hora que executa sai isto na tela:
C:\Fabio Java>java TesteBancos
Numero de contas Criadas ja chegou ao limite maximo!
Numero de contas Criadas ja chegou ao limite maximo!
Numero de contas Criadas ja chegou ao limite maximo!
Saldo Anterior: 1000.0
Saldo Final: 1010.0
Saldo Anterior: 999.9
Saldo Final: 1019.898
Saldo Anterior: 1000.0
Saldo Final: 1030.0
Porque a mensagem é impressa primeiro, isso que nao estou entendendo e conseguindoresolver poderiam me ajudar? Desde ja Obrigado
flws
/*10) (Opcional, Trabalhoso) Crie uma classe Banco que possui um array de Conta. Repare que num array de
Conta você pode colocar tanto ContaCorrente quanto ContaPoupanca. Crie um método void adiciona(Conta
c), um método Conta pegaConta(int x) e outro int pegaTotalDeContas(), muito similar a relação anterior
de Empresa-Funcionario.Faça com que seu método main crie diversas contas, insira-as no Banco e depois, com um for, percorra
todas as contas do Banco para passá-las como argumento para o AtualizadorDeContas.*/
class Bancos{
protected Conta[] contas;
public Bancos(int valor){
this.contas = new Conta[valor];
}
public void adiciona(Conta c){
for(int i=0;i < contas.length; i++){
if(this.contas[i]== null){
this.contas[i] = c;
break;
}
else{
System.out.println("Numero de contas Criadas ja chegou ao limite maximo!");
}
}
}
public Conta pegaConta(int x){
return contas[x];
}
public int pegaTotalDeContas(){
int totalContas = 0;
for(int i=0;i < contas.length; i++){
if(this.contas[i] == null){
totalContas += 0;
}
else{
totalContas += 1;
}
}
return totalContas;
}
}
class TesteBancos{
public static void main(String[] args){
Bancos banco;
Conta c = new Conta();
Conta cc = new ContaCorrente();
Conta cp = new ContaPoupanca();
AtualizadorDeContas adc = new AtualizadorDeContas(0.01);
banco = new Bancos(3);
c.deposita(1000);
cc.deposita(1000);
cp.deposita(1000);
banco.adiciona(c);
banco.adiciona(cc);
banco.adiciona(cp);
for(int i=0; i < banco.pegaTotalDeContas(); i++){
if(banco.pegaTotalDeContas() != 0){
adc.roda(banco.pegaConta(i));
}
else{
System.out.println("Não ha nenhuma conta criada.");
}
}
}
}
