<< Chapter < Page Chapter >> Page >
These learning objects are for control structures in Java. Control structures change the dynamic flow of a program and include if, loop, and switch statements.

Learning objects for control statements

Concept Normally, statements in Java are executed sequentially in the order written in the source code. Control statements are used to modify the order of execution of statements. Most control statements are conditional ; that is, the next statement to be executed depends on the result of evaluatingan expression, usually, an expression that returns a boolean value of true or false.

These source code of these learning objects can be found in control.zip .

LO Topic Java Files (.java) Prerequisites
"If-statements" If-statements Control01
"Conditional expressions" Conditional expressions Control02 1
"While loops" While loops Control03
"Do-while loops" Do-while loops Control04
"Break statements" Break statements Control05 3
"Counting with for statements" Counting with for statements Control06
"General for statements" General for statements Control07 6
"Continue statements" Continue statements Control08 6
"Switch statements" Switch statements Control09

If-statements

Concept The execution of an if-statement starts with the evaluation of its boolean-valued expression. If the result is true, the statement writtenafter the closing parenthesis of the expression is executed; if the result is false, the statement written after the else is executed. These statements can be single statements or blocks of statements. In particular,the statements can themselves be if-statements ( nested if-statements ), in which case the inner statement is executed the same way.

Program: Control01.java

// Learning Object Control01 //    if statementspublic class Control01 {     public static void main(/*String[] args*/) {         int year = 2000;        int month = 6;         int days;        if (month == 2)             if (year % 4 == 0)                days = 28;             else                days = 29;         else if (month == 4 || month == 6 ||                month == 9 || month == 11)             days = 30;        else             days = 31;        System.out.println(days);     }}

The program computes the number of days in a month taking leap years into account.

  • The variables are allocated and the first two, year and month , are given initial values.
  • The expression month == 2 evaluates to false, so the statement following the else is executed. Jeliot will display Choosing else-branch to emphasize this.
  • The inner statement is itself an if-statement. The expression is evaluated and its result is true. Note that once one of the terms of || (or) becomes true, there is no need to evaluate the others.
  • The assignment statement following the statement is executed. Jeliot will display Choosing then-branch . (The terminology then-branch orginates from programming languages that require the use of the keyword then between the expression and the statement.)
  • The value of days is printed.

Exercise Complete the program with the correct computation for leap years: a year divisible by 100 is not a leap year unless itis also divisible by 400.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Learning objects for java (with jeliot). OpenStax CNX. Dec 28, 2009 Download for free at http://cnx.org/content/col10915/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Learning objects for java (with jeliot)' conversation and receive update notifications?

Ask