<< Chapter < Page Chapter >> Page >

In both of these formats, the code on the left of the assignment operator declares a reference variable. The code on the right of the assignment operatorcreates a new array object and returns the array object's reference. The reference is assigned to the new reference variable declared on the left.

A two-dimensional array object

In the code fragments shown above, the array object is a two-dimensional array object that can be thought of as consisting of three rows and five columns.

(Actually, multi-dimensional array objects in Java can be much more complex than this. Infact, although I have referred to this as a two-dimensional array object, there is no such thing as a multi-dimensional array object in Java. The concept of amulti-dimensional array in Java is achieved by creating a tree structure of single-dimensionalarray objects that contain references to other single-dimensional array objects.)

The square brackets in the declaration

What about the placement and the number of matching pairs of empty square brackets? As indicated in the first two acceptable formats shown above, theempty square brackets can be next to the name of the type or next to the name of the reference variable. The end result is the same, so you can use whicheverformat you prefer.

How many pairs of square brackets are required?

Also, as implied by the acceptable formats shown above, the number of matching pairs of empty square brackets must match the number of so-called dimensions of the array. (This tells the compiler to create a reference variable capable of holding a reference to a one-dimensional array object, whose elementsare capable of holding references to other array objects.)

Making the two steps obvious

A third acceptable format, also shown above, separates the process into two steps.

One statement in the third format declares a reference variable capable of holding a reference to a two-dimensional array object containing data of type int . When that statement finishes executing, the reference variable exists, but it doesn't refer to an actual array object. The nextstatement creates an array object and assigns that object's reference to the reference variable.

Back to Question 3

Answer 2

D. Tom Dick Harry

Explanation 2

An array is an object in Java

An array is a special kind of object in Java. Stated differently, all array structures are encapsulated in objects in Java. Further. all array structuresare one-dimensional. I often refer to this special kind of object as an array object .

An array object always has a property named length . The value of the length property is always equal to the number of elements in the array. Thus, a program can always determine the sizeof an array be examining its length property.

Instantiating an array object

An array object can be instantiated in at least two different ways:

  1. By using the new operator in conjunction with the type of data to be stored in the array.
  2. By specifying an initial value for every element in the array, in which case the new operator is not used.

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