<< Chapter < Page Chapter >> Page >

The ArrayList class

The ArrayList class is one of the concrete class implementations of the Collections Framework. This class implements both the Collection interface and the List interface. Therefore, it is both a collection and a list, and adheres to the contracts and stipulations of both interfaces.

Here is part of what Oracle has to say about the ArrayList class:

"Resizable-array implementation of the List interface. Implements all optional list operations, and permits all elements, including null. ...(This class is roughly equivalent to Vector, except that it is unsynchronized.)"

The reverse method of the Collections class

The call to the reverse method shown in Listing 4 is new to this module.

Listing 4 . The reverse method of the Collections class.
Collections.reverse((List)ref); iter = ref.iterator();while(iter.hasNext()){ System.out.print(iter.next() + " ");}//end while loop

The Collections class

A previous module discussed the Collections class, indicating that the class provides a number of static methods that can be used to manipulatecollections. As a refresher, here is part of what Oracle has to say about the Collections class:

"This class consists exclusively of static methods that operate on or return collections. It contains polymorphic algorithms that operate oncollections, "wrappers", which return a new collection backed by a specified collection, and a few other odds and ends."

You should recall that the Collections class is not the same as the Collection interface. Don't confuse the two.

The reverse method

One of the static methods in the Collections class is the method named reverse . Here is part of what Oracle has to say about the reverse method:

"Reverses the order of the elements in the specified list."

Pretty simple, huh? But also very useful in some cases.

Contents of the list

After calling the reverse method on the list, the code in Listing 4 above used an iterator to get and display the contents of the list. The contentsof the list at that point in the program were as shown below:

TOM BILL JOE Tom Bill Joe

If you compare this with the previous output, you will see that the locations of the elements in the list are reversed. The element at index 0 was movedto index 5, the element at index 5 was moved to index 0, and the elements in between were moved accordingly.

The reverseOrder method

The code in Listing 5 is also new to this module. This code calls the static reverseOrder method of the Collections class and stores the returned value in a reference variable of type Comparator .

Listing 5 . The reverseOrder method.
Comparator aComparator= Collections.reverseOrder();

What does Oracle have to say about this?

Here is part of what Oracle has to say about the reverseOrder method:

"Returns a comparator that imposes the reverse of the natural ordering on a collection of objects that implement the Comparable interface. (Thenatural ordering is the ordering imposed by the objects' own compareTo method.) This enables a simple idiom for sorting (or maintaining)collections (or arrays) of objects that implement the Comparable interface in reverse-natural-order."

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