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.