"missing return statement" que erro é esse?

2 respostas
L

estou criando uma classe para fazer um programa mas nesta classe tem erro que sei como resolver, olhem o programa:

class Cliente{

int numero;

String nome;

double saldo;

double limite;

float juros;

double saldogeral()
{return (this.saldo + this.limite);}

double calcularjuros()

{if (saldo<0)

return (Math.abs(saldo)*(juros/100));}//aqui dá um erro assim: “missing return statement”, porque?
double calcularjuros(double valor)

{juros = this.juros;

return calcularjuros();}
char tipocliente(double valor){

char ret;

if (saldogeral() >= valor)

ret = A;

else{

if (saldogeral() >= valor/2)

ret = B;

else

ret = C;}

return (ret);}

}//class

2 Respostas

C

Dá erro pq vc está tratando apenas o caso onde saldo<0.

Precisa colocar um else ou coisa parecida para quando saldo>=0

R

Olá Fernando ! Antes de tudo, por favor, use as convenções Java, ou seja, escreva código no padrão.

O erro está ocorrendo, porque o return só vai ser “chamado” qndo saldo < 0, caso contrário a função está sem return. Segue um exemplo do método válido:

double calcularJuros() {
   double resultSaldo = saldo;
   if (saldo <0)
      resultSaldo = (Math.abs(saldo)*(juros/100));

   return resultSaldo;
}
Criado 4 de abril de 2006
Ultima resposta 4 de abr. de 2006
Respostas 2
Participantes 3