© 1998-2002 McGraw-Hill

structure
Class OrderedVector

java.lang.Object
  |
  +--structure.AbstractStructure
        |
        +--structure.OrderedVector
All Implemented Interfaces:
OrderedStructure, Structure

public class OrderedVector
extends AbstractStructure
implements OrderedStructure

Implementation of an ordered structure implemented using a vector. Values are stored within this vector in increasing order. All values stored within an ordered vector must implement comparable.

Example Usage:

To determine the effect of the original Starwars™ movie on the careers of its stars, we could place ComparableAssociations between each star's name and the number of movies they have been in since Starwars™ into an ordered vector and print our the results.

 public static void main(String[] argv){
	//instantiate an ordered vector
	OrderedVector v = new OrderedVector();
	
	//add the cast members of the original star wars along with
	//the number of films in which the have subsequently appeared
	v.add(new ComparableAssociation(new Integer(12),"Sir Alec Guiness"));
	v.add(new ComparableAssociation(new Integer(24),"Carrie Fisher"));
	v.add(new ComparableAssociation(new Integer(28),"Harrison Ford")); 
	v.add(new ComparableAssociation(new Integer(28),"Mark Hamill"));

	//print out the results
	for(Iterator i = v.iterator(); i.hasNext();){
	    ComparableAssociation actor = (ComparableAssociation)i.next();
	    System.out.println(actor.getValue() + " has been in " + 
			       actor.getKey() + " movies since Star Wars"); 
	}
   }
 

See Also:
Vector

Field Summary
protected  Vector data
          The vector of values.
 
Constructor Summary
OrderedVector()
          Construct an empty ordered vector
 
Method Summary
 void add(Object value)
          Add a comparable value to an ordered vector
 void clear()
          Removes all the values from a an ordered vector
 boolean contains(Object value)
          Determine if a comparable value is a member of the ordered vector
protected  int indexOf(Comparable target)
           
 boolean isEmpty()
          Determine if the ordered vector is empty.
 Iterator iterator()
          Construct an iterator to traverse the ordered vector in ascending order
 Object remove(Object value)
          Remove a comparable value from an ordered vector At most one value is removed
 int size()
          Determine the number of elements within the ordered vector
 String toString()
          Construct a string representation of an ordered vector
 
Methods inherited from class structure.AbstractStructure
elements, hashCode, values
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, notify, notifyAll, registerNatives, wait, wait, wait
 
Methods inherited from interface structure.Structure
elements, values
 

Field Detail

data

protected Vector data
The vector of values. Values are stored in increasing order
Constructor Detail

OrderedVector

public OrderedVector()
Construct an empty ordered vector
Method Detail

add

public void add(Object value)
Add a comparable value to an ordered vector
Specified by:
add in interface Structure
Parameters:
value - The comparable value to be added to the ordered vector
Precondition:
value is non-null
Postcondition:
inserts value, leaves vector in order

contains

public boolean contains(Object value)
Determine if a comparable value is a member of the ordered vector
Specified by:
contains in interface Structure
Overrides:
contains in class AbstractStructure
Parameters:
value - The comparable value sought
Precondition:
value is non-null
Postcondition:
returns true if the value is in the vector
Returns:
True if the value is found within the ordered vector

remove

public Object remove(Object value)
Remove a comparable value from an ordered vector At most one value is removed
Specified by:
remove in interface Structure
Parameters:
value - The comparable value to be removed
Precondition:
value is non-null
Postcondition:
removes one instance of value, if found in vector
Returns:
The actual comparable removed

isEmpty

public boolean isEmpty()
Determine if the ordered vector is empty.
Specified by:
isEmpty in interface Structure
Overrides:
isEmpty in class AbstractStructure
Postcondition:
returns true if the OrderedVector is empty
Returns:
True iff the ordered vector is empty

clear

public void clear()
Removes all the values from a an ordered vector
Specified by:
clear in interface Structure
Postcondition:
vector is emptied

size

public int size()
Determine the number of elements within the ordered vector
Specified by:
size in interface Structure
Postcondition:
returns the number of elements in vector
Returns:
The number of elements within the ordered vector

iterator

public Iterator iterator()
Construct an iterator to traverse the ordered vector in ascending order
Specified by:
iterator in interface Structure
Postcondition:
returns an iterator for traversing vector
Returns:
An iterator to traverse the ordered vector

indexOf

protected int indexOf(Comparable target)

toString

public String toString()
Construct a string representation of an ordered vector
Overrides:
toString in class Object
Precondition:
returns string representation of ordered vector
Returns:
The string representing the ordered vector

© 1998-2002 McGraw-Hill