Ajuda com retorno de boolean em objeto

2 respostas
S

Bom antes de mais nada estou aprendendo Java, então levem em consideração isso quando avaliarem esse codigo que fiz(meu primeiro app sozinho...) deve estar uma confusão :D

package Conta;

public class Processos {
	
	//lista com numeros de conta existentes
	public int contareferencia[][] = {{1529, 1},{2,2},{1,1},{15,15},{16,16}};
	//checa se o numero da conta existe
	protected void Checaconta (int bunda)
	{
		
		int conta = bunda;
		int y=0;
		int i;
		int x=0;
		while (y < contareferencia.length)
		{
			
		i = contareferencia[y][x]; 
			
		
			if (conta == i)
			{
				//int z=y;
				System.out.print("Número de conta existente.\n");
				//System.out.println(z);
					AbrirConta.localArrayConta = y;
					AbrirConta.resposta = true;
					return;
				}
				y++;
				
		}
		System.out.printf("A conta numero %d %s\n", conta,"não existe." );
		
		
	}
	
	protected void ChecaSenha(int x, int z)
	{
		int senha = x;
		int conta = z;
		int j=0;
		while (j < 2)
		{
			int d =  contareferencia[conta][j];
			if ( senha == d)
			{
				System.out.println("Senha correta\n\n Bem Vindo ao nosso HomeBank !\n");
				AbrirConta.resposta = true;
				return;
			}
			j++;
			
		}
		System.out.println("A senha esta incorreta tente de novo !");
		
		
	}
	
	protected void IncluiNomeSenha (int conta, int senha)
	{
		
		int senha1 = senha;
		int conta1 = conta;
		int i=0;
		int j=0;
		
		do
		{
			if( contareferencia[i][j] == 0)
			{
			contareferencia[i][j] = conta1;
				j++;
			contareferencia[i][j] = senha1;
			}
		i++;
		}while (i <= contareferencia.length);
		
	}
}

essa classe faz os processos (eu sei que classe e no singular mas essa eu coloquei assim sem querer...) de validação do meu homebank pessoal, o meu problema e... COMO E QUE EU FAÇO PARA UM METODO RETORNAR UM VALOR BOOLEAN PARA QUEM O CHAMAR ?

por que quando declaro o metodo assim

"Protected boolean metodo(int x)
{}"

ele me diz que o metodo não pode converter Boolean em INT. mas que que tem a ver os paramentros que eu coloco no metodo com a resposta dele ?

por causa disso tive que fazer uma gambiarra e criar um atributo "global" resposta nessa classe para retornar os valores que eu quero. ou seja, se a conta do cliente existe mesmo e se a senha dela corresponde a essa conta em particular.

Obrigado.

2 Respostas

P

opa…bem vindo ao mundo Java…

soh um toque…tente deixar o nome de métodos com a primeira letra minúscula…

e para o seu método retornar boolean, é só voce colocar boolean no lugar de void e dentro do seu método, vc usar o return true; , ou return false;

eu prefiro no início do método crie uma variável booleana, e durante o método conforme as suas condições vc atribui o valor de true ou false pra ela e no final vc faz

boolean suaVariavel = true;

...

return suaVariavel;

espero ter ajudado…

D

bom dia…

um pouco confuso…não sei é isso que vc precisa, mas…lá vai um exemplo…

public class Conta{
private double saldo;

public Conta(double saldo){
this.saldo = saldo;
}

public boolean podeRetirar(double valor){
boolean retorno = false;
if(valor>this.saldo){
retorno = false;
}else{
retorno = true;
}
return retorno;
}

}

Classe que chama a classe conta

public class Banco{
....
public static void main(String[] a){
Conta conta = new Conta(SeuSaldo);
double valor_retirar = 40.0;
if(conta.podeRetirar(valor_retirar)){
    System.out.println("pode retirar");
}else{
     System.out.println("não pode retirar");
}
}
}

espero ter sanado sua dúvida…senao…posta aqui!

Criado 15 de fevereiro de 2007
Ultima resposta 15 de fev. de 2007
Respostas 2
Participantes 3