<< Chapter < Page Chapter >> Page >

Returning a value of type int in the for loop will satisfy the type requirement because type int will be automatically converted to type double as it is returned. (Conversion from type int to type double is a widening conversion.)

Back to Question 14

Answer 13

A. Compiler Error

Explanation 13

The scope of a local variable

In general, the scope of a local variable extends from the point at which it is declared to the curly brace that signals the end of the block in which it isdeclared.

This applies to for loop in an interesting way

While it is allowable to declare a variable within the first clause of a for loop, the scope of that variable is limited to the block of code contained in the loop structure.

The variable cannot be accessed outside the loop.

Attempts to access variable out of scope

This program attempts to access the value of the variable named cnt after the loop terminates.

The program displays the following compiler error under JDK 1.3. This error results from the attempt to display the value of the counter after theloop terminates.

Ap037.java:15: cannot resolve symbol symbol : variable cntlocation: class Worker System.out.println(cnt + " ");

Back to Question 13

Answer 12

C. 0 1 2 3 4 5

Explanation 12

A simple for loop structure

This program illustrates a simple for loop that displays the value of its counter using a call to the print method inside the loop.

After the loop terminates, the program displays the value of the counter one last time using a call to println .

Three clauses separated by semicolons

The first line of a for loop structure always contains three clauses separated by semicolons.

The first and third clauses may be empty, but the semicolons are required in any case.

The first clause ...

The first clause is executed once and only once at the beginning of the loop.

It can contain just about any valid Java expression.

It can even contain more than one expression with the individual expression separated by commas.

When the first clause contains more than one expression separated by commas, the expressions are evaluated in left-to-right order.

The second clause

The second clause is a conditional clause. It must contain an expression that returns a boolean value.

(Actually, this clause can also be empty, in which case it is apparently assumed to be true. This leads to an infinite loop unless there is somecode inside the loop to terminate it, perhaps by executing a return or a break statement.)

An entry-condition loop

The for loop is an entry condition loop, meaning that the conditional expression is evaluated once immediately after the first clause isexecuted, and once per iteration thereafter.

Behavior of the for loop

If the conditional expression returns true, the block of code following the closing parenthesis is executed.

If it returns false, the block of code is skipped, and control passes to the first executable statement following the block of code.

(For the case where the block contains only one statement, the matching curly brackets can be omitted.)

The third clause

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask