<< Chapter < Page Chapter >> Page >

Back to Question 1

Complete program listing

Listing 1 . Comparator05.java.
//File Comparator05.java //Copyright 2001, R.G.Baldwinimport java.util.*; import java.io.Serializable;public class Comparator05{ public static void main(String args[]){ new Worker().doIt();}//end main() }//end class Comparator05class Worker{ public void doIt(){Iterator iter; Collection ref;Object[] array;ref = new Vector(); Populator.fillIt(ref);iter = ref.iterator(); System.out.println("Collection data");while(iter.hasNext()){ System.out.print(iter.next() + " ");}//end while loop System.out.println();array = ref.toArray(); System.out.println("Raw array data");display(array); //Sort the array into natural order// and display it. Arrays.sort(array);System.out.println("Natural order sorted " + "array data");display(array); //Sort the array into custom order// and display it. Arrays.sort(array, new TheComparator());System.out.println("Custom order sorted " + "array data");display(array); iter = ref.iterator();System.out.println("Collection data"); while(iter.hasNext()){System.out.print(iter.next() + " "); }//end while loopSystem.out.println(); }//end doIt()static void display(Object[] array){for(int i = 0; i<array.length;i++){ System.out.print(array[i]+ " "); }//end for loopSystem.out.println(); }//end display()}// end class Worker class Populator{public static void fillIt(Collection ref){ ref.add("Joe");ref.add("Bill"); ref.add("Tom");ref.add("JOE"); ref.add("BILL");ref.add("TOM"); }//end fillIt()}//end class Populator class TheComparator implements Comparator,Serializable{public int compare(Object o1,Object o2){ if(!(o1 instanceof String))throw new ClassCastException(); if(!(o2 instanceof String))throw new ClassCastException(); int result = ((String)o1).compareTo(((String)o2));return result*(-1); }//end compare()}//end class TheComparator

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Java4120r: Review
  • File: Java4120r.htm
  • Published: 12/03/13
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download aPDF file for this module at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, youshould be aware that some of the HTML elements in this module may not translate well into PDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version ofthe module.

In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale onAmazon.com showing me as the author. I neither receive compensation for those sales nor do I know who does receive compensation. If youpurchase such a book, please be aware that it is a copy of a module that is freely available on cnx.org and that it was made andpublished without my prior knowledge.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

-end-

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