Skip to main content
Documents
Share
LinkedIn
Facebook
Twitter
Copy
Java keywords

return Keyword in Java

The return keyword in Java is used to exit from a method and optionally pass back a value to the method caller. It serves as a control flow statement that terminates the execution of the method in which it appears.

Usage

The return keyword can be used in methods with or without a return type. In methods with a return type, it must be followed by a return value that matches the method's declared return type. In void methods, return can be used without any value to exit the method early.

Syntax

return; // For void methods
return value; // For methods with a return type
  • value: The value to return, which must match the method's declared return type.

Examples

Example 1: Returning a Value

public class ReturnExample {
    public static void main(String[] args) {
        int result = add(5, 3);
        System.out.println("Result: " + result);
    }

    public static int add(int a, int b) {
        return a + b;
    }
}

In this example, the add method returns the sum of two integers. The return statement passes the result back to the caller.

Example 2: Exiting a void Method Early

public class ReturnVoidExample {
    public static void main(String[] args) {
        checkNumber(5);
        checkNumber(-1);
    }

    public static void checkNumber(int number) {
        if (number < 0) {
            System.out.println("Negative number");
            return; // Exit the method early
        }
        System.out.println("Positive number");
    }
}

Here, the checkNumber method uses return to exit early if the number is negative. If the number is positive, the method continues to execute the remaining statements.

Example 3: Returning an Object

public class ReturnObjectExample {
    public static void main(String[] args) {
        String message = getMessage();
        System.out.println(message);
    }

    public static String getMessage() {
        return "Hello, World!";
    }
}

In this example, the getMessage method returns a String object. The return statement passes the string "Hello, World!" back to the caller.

Tips and Best Practices

  • Match Return Type: Ensure that the value returned by the return statement matches the method's declared return type.
  • Single Point of Exit: While multiple return statements can be used, strive to have a single point of exit to improve code readability and maintainability.
  • Avoid Side Effects: Avoid using return statements that cause side effects, such as modifying global variables or performing I/O operations, as this can lead to unpredictable behavior.
  • Use Early Returns: Use early returns to simplify complex conditional logic and reduce nested code blocks.
    public static void process(int value) {
        if (value <= 0) {
            return; // Early return for invalid input
        }
        // Continue processing for valid input
    }
  • Document Return Values: Clearly document the return values of your methods to improve code readability and maintainability. Use Javadoc comments to specify what each method returns.
    /**
     * Adds two integers.
     * @param a First integer
     * @param b Second integer
     * @return Sum of a and b
     */
    public static int add(int a, int b) {
        return a + b;
    }