<< Chapter < Page | Chapter >> Page > |
Putting data into the secondary array elements
The code interior to the inner loop simply calculates some numeric values and stores those values in the elements of the three secondary array objects.
Let's look at a picture
Here is a picture that attempts to illustrate what is really going on here. I don't know if it will make sense to you or not, but hopefully, it won't make thesituation any more confusing than it might already be.
[->] [1][1][1][1][1]
[->] [1][2][3][4][5]
[->] [1][3][5][7][9]
The primary array
The three large boxes on the left represent the individual elements of the three-element primary array. The length property for this array has a value of3. The arrows in the boxes indicate that the content of each of these three elements is a reference to one of the five-element arrays on the right.
The secondary arrays
Each of the three rows of five boxes on the right represents a separate five-element array object. Each element in each of those array objects containsthe int value shown. The length property for each of those arrays has a value of 5.
Access and display the array data
The code in the following fragment is another pair of nested for loops.
for(int i=0;i<myArray.length;i++){
for(int j=0;j<myArray[0].length;j++){System.out.print(
myArray[i][j] + " ");}//end inner for loop
System.out.println("");}//end outer for loop
In this case, the code in the inner loop accesses the contents of the individualelements in the three five-element arrays and displays those contents. If you understand the earlier code in this program, you shouldn't have any difficultyunderstanding the code in this fragment.
A. Compiler Error
An incorrect statement
The following statement is not the proper way to create an array object in Java.
int myArray[3][5];
This statement caused the program to fail to compile, producing several error messages.
What is the correct syntax?
There are several different formats that can be used to create an array object in Java. One of the acceptable ways was illustrated by the code used in Question 2 . Three more acceptable formats are shown below.
int[][]myArrayA = new int[3][5];
int myArrayB[][] = new int[3][5];int myArrayC[][];
myArrayC = new int[3][5];
Two steps are required
The key thing to remember is that an array is an object in Java. Just like all other (non-anonymous) objects in Java, there are two steps involved in creating and preparing an object for use.
Declare a reference variable
The first step is to declare a reference variable capable of holding a reference to the object.
The second step
The second step is to create the object and to assign the object's reference to the reference variable. From that point on, the reference variable can beused to gain access to the object.
Two steps can often be combined
Although there are two steps involved, they can often be combined into a single statement, as indicated by the first two acceptable formats shown above.
Notification Switch
Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?