structure
Class ComparableAssociation

java.lang.Object
  |
  +--structure.Association
        |
        +--structure.ComparableAssociation
All Implemented Interfaces:
java.lang.Comparable, java.util.Map.Entry

public class ComparableAssociation
extends Association
implements java.lang.Comparable

A class implementing a comparable key-value pair. This class associates an immutable key with a mutable value. Useful for many other structures. Example usage:

To print out a list of professors sorted by the number of classes a particular student took from each, we could use the following:

 public static void main(String[] argv){
	//initialize a new fib heap
	FibHeap classesTaken = new FibHeap();

	//add professors and classes taken to a heap
	classesTaken.add(new ComparableAssociation(new Integer(5), "Andrea"));
	classesTaken.add(new ComparableAssociation(new Integer(1), "Barbara"));
	classesTaken.add(new ComparableAssociation(new Integer(3), "Bill"));
	classesTaken.add(new ComparableAssociation(new Integer(2), "Duane"));	
	classesTaken.add(new ComparableAssociation(new Integer(1), "Tom"));	

	//print out classes taken
	while(!classesTaken.isEmpty()){
	    ComparableAssociation p = (ComparableAssociation)classesTaken.remove();
	    System.out.println(p.getValue() + " is " + p.getKey() + " years old.");
	}
 }
 


Field Summary
 
Fields inherited from class structure.Association
theKey, theValue
 
Constructor Summary
ComparableAssociation(java.lang.Comparable key)
          Construct an association that can be ordered, from only a key.
ComparableAssociation(java.lang.Comparable key, java.lang.Object value)
          Construct a key-value association that can be ordered.
 
Method Summary
 int compareTo(java.lang.Object other)
          Determine the order of two comparable associations, based on key.
 java.lang.String toString()
          Construct a string representation of the ComparableAssociation.
 
Methods inherited from class structure.Association
equals, getKey, getValue, hashCode, setValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ComparableAssociation

public ComparableAssociation(java.lang.Comparable key)
Construct an association that can be ordered, from only a key. The value is set to null.

Parameters:
key - The (comparable) key.

ComparableAssociation

public ComparableAssociation(java.lang.Comparable key,
                             java.lang.Object value)
Construct a key-value association that can be ordered.

Parameters:
key - The (comparable) key.
value - The (possibly comparable) associated value.
Method Detail

compareTo

public int compareTo(java.lang.Object other)
Determine the order of two comparable associations, based on key.

Specified by:
compareTo in interface java.lang.Comparable
Parameters:
other - The other comparable association.
Returns:
Value less-than equal to or greater than zero based on comparison

toString

public java.lang.String toString()
Construct a string representation of the ComparableAssociation.

Overrides:
toString in class Association
Returns:
The string representing the ComparableAssociation.