logo

Declaração de retorno em Java

O que é uma instrução de retorno em Java?

Na programação Java, a instrução return é usada para retornar um valor quando a execução do bloco é concluída. A instrução return dentro de um loop fará com que o loop seja interrompido e outras instruções serão ignoradas pelo compilador.

quantos zero por um milhão

Retornando um valor de um método

Em Java, todo método é declarado com um tipo de retorno como int, float, double, string, etc.

Esses tipos de retorno exigiam uma instrução return no final do método. Uma palavra-chave return é usada para retornar o valor resultante.

O tipo de retorno void não requer nenhuma instrução de retorno. Se tentarmos retornar um valor de um método void, o compilador mostrará um erro.

A seguir estão os pontos importantes que você deve lembrar ao retornar um valor:

  • O tipo de retorno do método e o tipo de dados retornados no final do método devem ser do mesmo tipo. Por exemplo, se um método for declarado com o tipo de retorno float, o valor retornado deverá ser apenas do tipo float.
  • A variável que armazena o valor retornado após o método ser chamado deve ser de um tipo de dados semelhante, caso contrário, os dados poderão ser perdidos.
  • Se um método for declarado com parâmetros, a sequência do parâmetro deve ser a mesma durante a declaração e a chamada do método.

Sintaxe:

A sintaxe de uma instrução return é que a palavra-chave return é seguida pelo valor a ser retornado.

 return returnvalue; 

Os programas Java a seguir demonstram o uso de instruções de retorno.

ExemploReturn1.java

 public class SampleReturn1 { /* Method with an integer return type and no arguments */ public int CompareNum() { int x = 3; int y = 8; System.out.println('x = ' + x + '
y = ' + y); if(x>y) return x; else return y; } /* Driver Code */ public static void main(String ar[]) { SampleReturn1 obj = new SampleReturn1(); int result = obj.CompareNum(); System.out.println('The greater number among x and y is: ' + result); } } 

Saída:

 x = 3 y = 8 The greater number among x and y is: 8 

No código Java acima, o método CompararNum é definido com o interno tipo de retorno. Ele compara o x e e valores e retorna o número maior.

ExemploReturn2.java

 public class SampleReturn2 { /* Method with an integer return type and arguments */ public int CompareNum(int x, int y) { System.out.println('x = ' + x + '
y = ' + y); if(x>y) return x; else return y; } /* Driver Code */ public static void main(String ar[]) { SampleReturn2 obj = new SampleReturn2(); int result = obj.CompareNum(15,24); System.out.println('The greater number among x and y is: ' + result); } } 

Saída:

 x = 15 y = 24 The greater number among x and y is: 24 

No código Java acima, o método CompararNum é definido com interno tipo de retorno e dois argumentos x e e . O método compara x e e valores e retorna o número maior.

Retornando uma Classe ou Interface

Um método pode ter o nome da classe como tipo de retorno. Portanto deve retornar o objeto da classe exata ou de sua subclasse.

Um nome de interface também pode ser usado como tipo de retorno, mas o objeto retornado deve implementar métodos dessa interface.

O programa Java a seguir mostra a implementação de um nome de classe como tipo de retorno.

ExemploReturn3.java

 class SumReturn { private int a; public SumReturn(int i) { a = i; } /*The addition method returns a SumReturn object with adding 100 into it. */ public SumReturn addition() { SumReturn result = new SumReturn(a + 100); return result; } public void display() { System.out.println('Additon result: ' + a); } } public class SampleReturn3 { /* Driver Code */ public static void main(String[] args) { SumReturn obj1 = new SumReturn(50); SumReturn obj2; /* addition method returns a reference of SumReult class */ obj2 = obj1.addition(); obj2.display(); } } 

Saída:

c++gui
 Additon result: 150 

No código acima, um SomaResultado classe contém um Adição método com o nome da classe como tipo de retorno. Ele retorna o resultado valor e imprime-o usando o mostrar método.