En Java, return es una palabra clave reservada, es decir, no podemos usarla como identificador. Se utiliza para salir de un método, con o sin valor. Uso de la palabra clave de retorno , ya que existen dos formas que se enumeran a continuación:
- Caso 1: métodos que devuelven un valor
- Caso 2: métodos que no devuelven un valor
Ilustremos implementándolos directamente de la siguiente manera:
Caso 1: métodos que devuelven un valor
Para los métodos que definen un tipo de devolución, la declaración de devolución debe ir seguida inmediatamente por el valor de devolución.
Ejemplo:
Java
// Java Program to Illustrate Usage of return Keyword // Main method class GFG { // Method 1 // Since return type of RR method is double // so this method should return double value double RR(double a, double b) { double sum = 0; sum = (a + b) / 2.0; // Return statement as we already above have declared // return type to be double return sum; } // Method 2 // Main driver method public static void main(String[] args) { // Print statement System.out.println(new GFG().RR(5.5, 6.5)); } }
6.0
Complejidad de tiempo: O(1)
Espacio Auxiliar : O(1)
Explicación de la salida: cuando estamos llamando a un método de clase GFG que tiene una suma de retorno que devuelve el valor de la suma y ese valor se muestra en la consola.
Caso 2: métodos que no devuelven un valor
Para los métodos que no devuelven un valor, se puede omitir la declaración de devolución en Java. Aquí surgen dos casos en los que el usuario no ha devuelto ningún valor, como se detalla a continuación:
- #1: Método que no usa declaración de retorno en la función nula
- #2: Métodos con tipo de retorno nulo
#1: Método que no usa declaración de retorno en la función nula
Ejemplo
Java
// Java program to illustrate no return // keyword needed inside void method // Main class class GFG { // Since return type of RR method is // void so this method shouldn't return any value void demoSum(int a, int b) { int sum = 0; sum = (a + b) / 10; System.out.println(sum); // No return statement in this method } // Method 2 // Main driver method public static void main(String[] args) { // Calling the method // Over custom inputs new GFG().demoSum(5, 5); // Display message on the console for successful // execution of the program System.out.print( "No return keyword is used and program executed successfully"); } // Note here we are not returning anything // as the return type is void }
1 No return keyword is used and program executed successfully
Nota: No se requiere declaración de devolución ( pero se puede usar ) para métodos con tipo de devolución void. Podemos usar «retorno»; lo que significa no devolver nada .
#2: Métodos con tipo de retorno nulo
Ejemplo 1-A:
Java
// Java program to illustrate usage of // return keyword in void method // Class 1 // Main class class GFG { // Method 1 // Since return type of RR method is // void so this method should not return any value void demofunction(double j) { if (j < 9) // return statement below(only using // return statement and not returning // anything): // control exits the method if this // condition(i.e, j<9) is true. return; ++j; } // Method 2 // Main driver method public static void main(String[] args) { // Calling above method declared in above class new GFG().demofunction(5.5); // Display message on console to illustrate // successful execution of program System.out.println("Program executed successfully"); } }
Program executed successfully
Explicación de salida: si la declaración if(j<9) es verdadera, entonces el control sale del método y no ejecuta el resto de la declaración del método RR y, por lo tanto, regresa nuevamente al método main() .
Ahora, geek, debe preguntarse qué pasa si usamos la declaración de devolución al final del programa.
La declaración de retorno se puede usar en varios lugares del método, pero debemos asegurarnos de que debe ser la última declaración que se ejecute en un método.
Nota : la declaración de devolución no necesita ser la última declaración en un método, pero debe ser la última declaración para ejecutar en un método.
Ejemplo 1-B:
Java
// Java program to illustrate return must not be always // last statement, but must be last statement // in a method to execute // Main class class GFG { // Method 1 // Helper method // Since return type of RR method is void // so this method should not return any value void demofunction(double i) { // Demo condition check if (i < 9) // See here return need not be last // statement but must be last statement // in a method to execute return; else ++i; } // Method 2 // main driver method public static void main(String[] args) { // Calling the method new GFG().demofunction(7); // Display message to illustrate // successful execution of program System.out.println("Program executed successfully"); } }
Program executed successfully
Explicación de salida:
A medida que la condición (i<9) se vuelve verdadera, ejecuta la declaración de devolución y, por lo tanto, el flujo sale del método ‘función de demostración’ y vuelve a la principal. Después de esto, la declaración de devolución debe ser la última declaración que se ejecute en un método, lo que significa que no tiene sentido definir ningún código después de la devolución, que se aclara a continuación de la siguiente manera:
Ejemplo 2A
Java
// Java program to illustrate usage of // statement after return statement // Main class class GFG { // Since return type of RR method is void // so this method should return any value // Method 1 void demofunction(double j) { return; // Here get compile error since can't // write any statement after return keyword ++j; } // Method 2 // Main driver method public static void main(String[] args) { // Calling the above defined function new GFG().demofunction(5); } }
Producción:
Ejemplo 2-B
Java
// Java program to illustrate usage // of return keyword // Main class class GFG { // Since return type of RR method is // void so this method should not return any value // Method 1 void demofunction(double val) { // Condition check if (val < 0) { System.out.println(val); return; // System.out.println("oshea"); } else ++val; } // Method 2 // Main drive method public static void main(String[] args) { // CAlling the above method new GFG().demofunction(-1); // Display message to illustrate // successful execution of program System.out.println("Program Executed Successfully"); } }
-1.0 Program Executed Successfully
Nota: En el programa anterior, descomentamos las declaraciones, arrojará un error.
Este artículo es una contribución de Rajat Rawat . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA