<< Chapter < Page Chapter >> Page >

Abnormal termination

While experiencing abnormal program termination isn't all that great, it is better than the alternative of using arrays whose boundaries aren't protected.Programming languages that don't protect the array boundaries simply overwrite other data in memory whenever the array boundaries are exceeded.

Attempt to access out of bounds element

The code in the for loop in the following fragment attempts to access the array element at the index value 5. That index value is out ofbounds of the array.

for(int j = 0;j<6;j++){ System.out.print(myArray[i][j]+ " "); }//end inner for loop

Because that index value is outside the boundaries of the array, an ArrayIndexOutOfBoundsException is thrown. The exception isn't caught and handled by program code, so the program terminates abnormally at runtime.

This program also illustrates that it is usually better to use the length property of an array to control iterative loops than to use hard-coded limitvalues, which may be coded erroneously.

Back to Question 5

Answer 4

C. 1 1 1 1 1 1 2 3 4 51 3 5 7 9

Explanation 4

A two-dimensional array

This program illustrates how to create, populate, and process a two-dimensional array with three rows and five columns.

(As mentioned earlier, a Java programmer who understands the fine points of the language probably wouldn't call this a two-dimensional array. Rather,this is a one-dimensional array containing three elements. Each of those elements is a reference to a one-dimensional array containing five elements.That is the more general way to think of Java arrays.)

The following code fragment creates the array, using one of the acceptable formats discussed in Question 3 .

int myArray[][]; myArray = new int[3][5];

Populating the array

The next code fragment uses a pair of nested for loops to populate the elements in the array with values of type int .

for(int i=0;i<myArray.length;i++){ for(int j=0;j<myArray[0].length;j++){myArray[i][j]= i*j + 1; }//end innerfor loop }//end outer for loop

This is where the analogy of a two-dimensional array falls apart. It is much easier at thispoint to think in terms of a three-element primary array, each of whose elements contains a reference to a secondary array containing five elements. (Note that in Java, the secondary arrays don't all have to be of the same size. Hence, itis possible to create odd-shaped multi-dimensional arrays in Java.)

Using the length property

Pay special attention to the two chunks of code that use the length properties of the arrays to determine the number of iterations for each of the for loops.

The first chunk determines the number of elements in the primary array. In this case, the length property contains the value 3.

The second chunk determines the number of elements in the secondary array that is referred to by the contents of the element at index 0 in theprimary array. (Think carefully about what I just said.)

In this case, the length property of the secondary array contains the value 5.

Questions & Answers

What are types of cell
Nansoh Reply
how can I get this book
Gatyin Reply
what is lump
Chineye Reply
what is cell
Maluak Reply
what is biology
Maluak
what's cornea?
Majak Reply
what are cell
Achol
Explain the following terms . (1) Abiotic factors in an ecosystem
Nomai Reply
Abiotic factors are non living components of ecosystem.These include physical and chemical elements like temperature,light,water,soil,air quality and oxygen etc
Qasim
what is biology
daniel Reply
what is diffusion
Emmanuel Reply
passive process of transport of low-molecular weight material according to its concentration gradient
AI-Robot
what is production?
Catherine
Pathogens and diseases
how did the oxygen help a human being
Achol Reply
how did the nutrition help the plants
Achol Reply
Biology is a branch of Natural science which deals/About living Organism.
Ahmedin Reply
what is phylogeny
Odigie Reply
evolutionary history and relationship of an organism or group of organisms
AI-Robot
ok
Deng
what is biology
Hajah Reply
cell is the smallest unit of the humanity biologically
Abraham
ok
Achol
what is biology
Victoria Reply
what is biology
Abraham
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

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