Solucionado (ver solução)
Solucionado
(ver solução)
9
respostas

Metodos com retorno

Bom dia,

Estou com duvidas com os métodos que retornam algum "valor" , como é a sintaxe ? Por exemplo quando eu preciso que ele retorne o resultado de uma conta que ele fez ? Como eu acesso/faço para atualizar essa informação no "main" ?

9 respostas

Oi Gabriel, bom dia.

A sintaxe é bem intuitiva, olhe um exemplo abaixo.

class A {
    public static void main(String[] args){
        int a = 2;
        int quadrado;
        quadrado = calculaQuadrado(a);
        System.out.println(quadrado);
    }

    static int calculaQuadrado(int a){
        return a*a;
    }
}

Acho que entendi, nesse exemplo você atribuiu o retorno do metodo para a variavel "quadrado" certo ? Existe algum outro modo de eu criar esse metodo para que o proprio metodo já realize isso ? por exemplo, colocar como retorno "return quadrado = a*a ;" ? Eu posso fazer isso ?

Foi isso que fiz sim (respondendo sua primeira pergunta).

Em sua última pergunta você quer dizer desse jeito?

static int calculaQuadrado(int a){
        return quadrado = a*a;
 }

Sim, está certo também ? Se for já entendi, muito obrigado

Nesse caso específico não estaria certo pois a variável quadrado pertence apenas ao escopo da main, e não da calculaQuadrado.

Um outro jeito mais detalhado de se fazer seria:

class A {
    public static void main(String[] args){
        int a = 2;
        int quadrado;
        quadrado = calculaQuadrado(a);
        System.out.println(quadrado);
    }

    static int calculaQuadrado(int a){
        int quadrado;
        quadrado = a*a;
        return quadrado;
    }
}

Para utilizar o retorno do "metodo" é preciso criar uma variável no método main e armazena-lo nela... Caso eu precise usar esse valor mais pra frente ? Por exemplo eu conseguiria printar direto assim "System.out.println(calculaQuadrado(a));" ?

solução!

Sim, você conseguiria fazer esse System.out sem problema algum do jeito que escreveu.

Então está tudo entendido! muito obrigado!

Nada :)