<< Chapter < Page Chapter >> Page >
Listing 1 . The program named Comparator03.
//File Comparator03.java //Copyright 2001 R.G.Baldwinimport java.util.*; import java.io.Serializable;public class Comparator03{ public static void main(String args[]){ new Worker().doIt();}//end main() }//end class Comparator03class Worker{ public void doIt(){Iterator iter; Collection ref;System.out.println("Natural ordering"); ref = new TreeSet();Populator.fillIt(ref); iter = ref.iterator();while(iter.hasNext()){ System.out.print(iter.next() + " ");}//end while loop System.out.println();System.out.println("Comparator in use"); ref = new TreeSet(new TheComparator());Populator.fillIt(ref); iter = ref.iterator();while(iter.hasNext()){ System.out.print(iter.next() + " ");}//end while loop System.out.println();}//end doIt() }// end class Workerclass 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 Populatorclass 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(); //Do an upper-case comparisonint result = ((String)o1).toUpperCase().compareTo(((String)o2). toUpperCase());return result; }//end compare()public boolean equals(Object o){ if(!(o instanceof TheComparator))return false; else return true;}//end overridden equals() }//end class TheComparator

If your answer was None of the above , you are correct.

The program output

The output produced by the program shown in Listing 1 is four lines long as shown below. (Note that the bullets shown below do not appear in the actual program output.)

  • Natural ordering
  • BILL Bill JOE Joe TOM Tom
  • Comparator in use
  • Bill Joe Tom

From the previous module

In the previous module, I introduced you to the essentials of defining and using a Comparator for controlling the sort order of the elements contained in a TreeSet collection.

In that module, I explained the difference between natural ordering and the sort ordering produced through the use of a Comparator object.

However, what I showed you generally replicated the natural ordering , and therefore, wasn't too exciting.

Doing more with a Comparator

In this and several subsequent modules, I am going to show you some of the things that you can do with a Comparator object. By using a Comparator object, you can achieve comparisons and sort orders that are different from the natural ordering for a given element type.

Two steps in the program

The program shown in Listing 1 goes through two major steps.

The first step

First it populates a TreeSet collection with the names of six people without using a Comparator . Then it displays the contents of that collection using an iterator. That produces the following output (without the bullets) :

  • Natural ordering
  • BILL Bill JOE Joe TOM Tom

Questions & Answers

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
cell is the building block of life.
Condoleezza Reply
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