<< Chapter < Page Chapter >> Page >
Collection data Joe Bill Tom JOE BILL TOM

As you can see, this is the same order in which the names were added to the collection by the fillIt method in Listing 4 .

The toArray method

The code in Listing 6 is new to this module. This code calls the toArray method on the Vector object to extract the contentsof the collection and store the elements in an array object of type Object .

Listing 6 . Call the toArray method.
array = ref.toArray();

(Recall that the variable named array was declared as a reference to an array object of type Object in Listing 1 .)

The contract

According to the documentation for the Vector class, this version of the toArray method:

"Returns an array containing all of the elements in this Vector in the correct order."

The documentation for the toArray method of the Collection interface is a little more verbose, reading partially as follows:

"Returns an array containing all of the elements in this collection. If the collection makes any guarantees as to what order its elements arereturned by its iterator, this method must return the elements in the same order.

Elements are returned in ascending index order

By default, the iterator for a Vector returns its elements in ascending index order. Therefore, the toArray method for a Vector object must return the elements in the same order.

A "safe" array

Also, according to Oracle:

"The returned array will be "safe" in that no references to it are maintained by this collection. ... The caller is thus free to modify thereturned array."

In the code in Listing 6 above, the returned reference to an array object is assigned to a reference variable that previously contained null. Following theexecution of the toArray method, that reference variable refers to an array object of type Object containing the same elements as the Vector collection, in ascending index order.

(Regarding the concept of a "safe" array, it is easy to demonstrate that the elements in the array refer to the same objects referred to by the elementsin the Vector. Thus, using the references stored in the array to modify the objects to which they refer also modifies the objects referred to by theelements stored in the Vector. In other words, the elements in the array are copies of the elements in the Vector. The elements in the array refer to theoriginal objects, and do not refer to copies (or clones) of those objects. As usual when dealing with multiple references to objects, care should be taken to avoidinadvertently corrupting those objects.)

Display the contents of the array

The code in Listing 7 passes the array object's reference to a method named display that displays the contents of the array in ascending index order.

Listing 7 . Display the contents of the array.
System.out.println("Raw array data"); display(array);

The output produced by the code in Listing 7 is as shown below:

Raw array data Joe Bill Tom JOE BILL TOM

As you can see, this is the same data, in the same order, as the contents of the collection displayed earlier.

(The method named display is a simple utility method that I won't discuss here because of its simplicity. You canview the display method in its entirety in Listing 1 .)

Questions & Answers

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
the study of living organisms and their interactions with one another and their environments
AI-Robot
what is biology
Victoria Reply
HOW CAN MAN ORGAN FUNCTION
Alfred Reply
the diagram of the digestive system
Assiatu Reply
allimentary cannel
Ogenrwot
How does twins formed
William Reply
They formed in two ways first when one sperm and one egg are splited by mitosis or two sperm and two eggs join together
Oluwatobi
what is genetics
Josephine Reply
Genetics is the study of heredity
Misack
how does twins formed?
Misack
What is manual
Hassan Reply
discuss biological phenomenon and provide pieces of evidence to show that it was responsible for the formation of eukaryotic organelles
Joseph Reply
what is biology
Yousuf Reply
the study of living organisms and their interactions with one another and their environment.
Wine
discuss the biological phenomenon and provide pieces of evidence to show that it was responsible for the formation of eukaryotic organelles in an essay form
Joseph Reply
what is the blood cells
Shaker Reply
list any five characteristics of the blood cells
Shaker
lack electricity and its more savely than electronic microscope because its naturally by using of light
Abdullahi Reply
advantage of electronic microscope is easily and clearly while disadvantage is dangerous because its electronic. advantage of light microscope is savely and naturally by sun while disadvantage is not easily,means its not sharp and not clear
Abdullahi
cell theory state that every organisms composed of one or more cell,cell is the basic unit of life
Abdullahi
is like gone fail us
DENG
cells is the basic structure and functions of all living things
Ramadan
What is classification
ISCONT Reply
is organisms that are similar into groups called tara
Yamosa
in what situation (s) would be the use of a scanning electron microscope be ideal and why?
Kenna Reply
A scanning electron microscope (SEM) is ideal for situations requiring high-resolution imaging of surfaces. It is commonly used in materials science, biology, and geology to examine the topography and composition of samples at a nanoscale level. SEM is particularly useful for studying fine details,
Hilary
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