Decision Making in Java (if, if-else, switch, break, continue, jump)

Decision-making in real life and decision-making in programming is somehow similar. In programming, there are some situations where we want a certain block of code to be executed to fulfill the condition. 

Programming languages use control flow statements to control the flow of the execution of the program depends upon some conditions. It causes the flow of execution to advance and branch-based changes to state the program.

Java’s Selection statements:

  • if
  • if-else
  • nested-if
  • if-else-if
  • switch-case
  • jump – break, continue, return
The above statements help to control the flow of the program's execution based on the conditions known during the run time.

  • if: if statement is the most straightforward method of decision-making statement. It is utilized to choose whether a specific statement or block of statements will be executed or not i.e assuming a specific condition is valid, a block of statement is executed in any case not.

Syntax:

if(condition
{
   // Statements to execute if
   // condition is true
}

Flowchart

Decision Making in Java (if, if-else, switch, break, continue, jump)

Example

// Java program to illustrate If statement 
class IfDemo 
    public static void main(String args[]) 
    { 
        int i = 10
  
        if (i > 15
            System.out.println("10 is less than 15"); 
  
        // This statement will be executed 
        // as if considers one statement by default 
        System.out.println("I am Not in if"); 
    } 

Output

I am Not in if

  • if-else: The if statement alone reveals to us that if a condition is genuine it will execute a block of statements and if the condition is false it will not. Yet, consider the possibility that we need to accomplish something different if the condition is false. Here comes the else statement. We can utilize the else explanation with if statement to execute a block of code when the condition is false.

Syntax:

if (condition)
{
    // Executes this block if
    // condition is true
}
else
{
    // Executes this block if
    // condition is false
}

Flow chart

Decision Making in Java (if, if-else, switch, break, continue, jump)


Example

// Java program to illustrate if-else statement 
class IfElseDemo 
    public static void main(String args[]) 
    { 
        int i = 10
  
        if (i < 15
            System.out.println("i is smaller than 15"); 
        else
            System.out.println("i is greater than 15"); 
    } 

Output

i is smaller than 15
  • nested-if: A nested if is an if the statement that is the objective of another if or else. Nested if statement implies and statement inside an if statement. Indeed, java permits us to settle if statement inside if statement. i.e, we can put an if statement inside another if statement.

Syntax

if (condition1
{
   // Executes when condition1 is true
   if (condition2) 
   {
      // Executes when condition2 is true
   }
}

Flowchart


Decision Making in Java (if, if-else, switch, break, continue, jump)

Example

// Java program to illustrate nested-if statement 
class NestedIfDemo 
    public static void main(String args[]) 
    { 
        int i = 10
  
        if (i == 10
        { 
            // First if statement 
            if (i < 15
                System.out.println("i is smaller than 15"); 
  
            // Nested - if statement 
            // Will only be executed if statement above 
            // it is true 
            if (i < 12
                System.out.println("i is smaller than 12 too"); 
            else
                System.out.println("i is greater than 15"); 
        } 
    } 


Output

i is smaller than 15
i is smaller than 12 too
  • if-else-if ladder: Here, a user can settle on various options. The if statements are executed starting from the top. When one of the conditions controlling the if is valid, the statement related with that if is executed, and the rest of the ladder is circumvented. In the event that none of the conditions is valid, the last else statement will be executed.

Syntax

if (condition)
    statement;
else if (condition)
    statement;
.
.
else
    statement;

Example

// Java program to illustrate if-else-if ladder 
class ifelseifDemo 
    public static void main(String args[]) 
    { 
        int i = 20
  
        if (i == 10
            System.out.println("i is 10"); 
        else if (i == 15
            System.out.println("i is 15"); 
        else if (i == 20
            System.out.println("i is 20"); 
        else
            System.out.println("i is not present"); 
    } 


Output

i is 20
  • jump: Java supports three jump statements: break, continue and return. These three statements transfer control to another part of the program.
  1. Break: In Java, the break is majorly used for:
  • Terminate a sequence in a switch statement (discussed above).
  • To exit a loop.
  • Used as a “civilized” form of goto.

Using break to exit a Loop

Using break, we can force immediate termination of a loop, bypassing the conditional expression and any remaining code in the body of the loop.
Note: Break, when used inside a set of nested loops, will only break out of the innermost loop.

Example

// Java program to illustrate using 
// break to exit a loop 
class BreakLoopDemo 
    public static void main(String args[]) 
    { 
        // Initially loop is set to run from 0-9 
        for (int i = 0i < 10i++) 
        { 
            // terminate loop when i is 5. 
            if (i == 5
                break
  
            System.out.println("i: " + i); 
        } 
        System.out.println("Loop complete."); 
    } 

Output

i: 0
i: 1
i: 2
i: 3
i: 4
Loop complete.
Using break as a Form of Goto

Java does not have a goto statement because it provides a way to branch in an arbitrary and unstructured manner. Java uses label. A Label is use to identifies a block of code.

Syntax

label:
{
  statement1;
  statement2;
  statement3;
  .
  .
}

Example

class BreakLabelDemo 
    public static void main(String args[]) 
    { 
        boolean t = true
  
        // label first 
        first: 
        { 
            // Illegal statement here as label second is not 
            // introduced yet break second; 
            second: 
            { 
                third: 
                { 
                    // Before break 
                    System.out.println("Before the break statement"); 
  
                    // break will take the control out of 
                    // second label 
                    if (t
                        break second; 
                    System.out.println("This won't execute."); 
                } 
                System.out.println("This won't execute."); 
            } 
  
            // First block 
            System.out.println("This is after second block."); 
        } 
    } 

Output

Before the break.
This is after second block.
Continue: Sometimes it is useful to force an early iteration of a loop. That is, you might want to continue running the loop but stop processing the remainder of the code in its body for this particular iteration. This is, in effect, a goto just past the body of the loop, to the loop’s end. The continue statement performs such an action.

Example

// Java program to illustrate using 
// continue in an if statement 
class ContinueDemo 
    public static void main(String args[]) 
    { 
        for (int i = 0i < 10i++) 
        { 
            // If the number is even 
            // skip and continue 
            if (i%2 == 0
                continue
  
            // If number is odd, print it 
            System.out.print(i + " "); 
        } 
    } 

Output

1 3 5 7 9
Return: The return statement is used to explicitly return from a method. That is, it causes program control to transfer back to the caller of the method.

Example:

// Java program to illustrate using return 
class Return 
    public static void main(String args[]) 
    { 
        boolean t = true
        System.out.println("Before the return."); 
      
        if (t
            return
  
        // Compiler will bypass every statement  
        // after return 
        System.out.println("This won't execute."); 
    } 

Output

Before the return.

Post a Comment

0 Comments