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

while Keyword in Java

The while keyword in Java is used to create a loop that executes a block of code as long as a specified condition is true. It is a control flow statement that allows repeated execution of a code block based on a boolean condition.

Usage

The while loop is useful when the number of iterations is not known beforehand and depends on a condition that is evaluated before each iteration.

Syntax

while (condition) {
    // Code to be executed
}
  • condition: A boolean expression that is evaluated before each iteration. If the condition is true, the loop continues; if false, the loop terminates.

Examples

Example 1: Basic while Loop

public class WhileExample {
    public static void main(String[] args) {
        int i = 0;
        while (i < 5) {
            System.out.println("i is: " + i);
            i++;
        }
    }
}

In this example, the variable i is initialized to 0. The while loop continues to execute as long as i is less than 5. The value of i is printed and incremented in each iteration.

Example 2: Reading Input Until Condition is Met

import java.util.Scanner;

public class WhileInputExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input = "";
        while (!input.equals("exit")) {
            System.out.println("Enter text (type 'exit' to quit): ");
            input = scanner.nextLine();
        }
        scanner.close();
    }
}

This example demonstrates using a while loop to read user input until the user types "exit". The loop continues to prompt the user for input until the condition !input.equals("exit") becomes false.

Example 3: Infinite Loop

public class InfiniteWhileLoop {
    public static void main(String[] args) {
        while (true) {
            System.out.println("This will print forever");
        }
    }
}

In this example, the condition in the while loop is true, which means the loop will execute indefinitely. This is known as an infinite loop and should be used with caution.

Tips and Best Practices

  • Ensure Termination: Always ensure that the while loop has a condition that will eventually become false to avoid infinite loops.
    int count = 0;
    while (count < 10) {
        // Ensure count is incremented
        count++;
    }
  • Avoid Complex Conditions: Keep the loop condition simple and easy to understand. Complex conditions can make the code difficult to read and maintain.
    while (isValid && count < max) {
        // Simple and clear condition
    }
  • Use Break Statements: If necessary, use break statements to exit the loop based on additional conditions.
    while (true) {
        if (someCondition) {
            break; // Exit loop
        }
    }
  • Resource Management: Always close resources like scanners or file readers inside the loop to avoid resource leaks.
    Scanner scanner = new Scanner(System.in);
    while (condition) {
        // Use scanner
    }
    scanner.close();
  • Debugging: If you encounter an infinite loop during debugging, use print statements or a debugger to understand why the condition is never becoming false.
  • Flow Control Visualization: Understanding the flow control of a while loop can be easier with a flowchart. This can help to visualize the steps and conditions involved in the loop execution.