jrob8577
9/11/2012 - 6:58 AM

Lecture 2 - Generic Types example

Lecture 2 - Generic Types example

public class OrderedPair<CompositionType> {

  private CompositionType first, second;

  public OrderedPair() {
  } // end default constructor

  public void setPair(CompositionType firstItem, CompositionType secondItem) {
    first = firstItem;
    second = secondItem;
  } // end setPair

  public void changeOrder() {
    CompositionType temp = first;
    first = second;
    second = temp;
  } // end changeOrder

  public String toString() {
    return "(" + first + ", " + second + ")";
  } // end toString

  public static void main(String[] args) {
    // T is replaced by type String 
    OrderedPair < String > fruit = new OrderedPair < String > (); 
    fruit.setPair ("apples", "oranges"); 
    System.out.println (fruit); 
    fruit.changeOrder (); 
    System.out.println (fruit); 
    
    // T is replaced by type Name 
    Name tweedleDee = new Name ("Tweedle", "Dee"); 
    Name tweedleDum = new Name ("Tweedle", "Dum"); 
    OrderedPair < Name > couple = new OrderedPair < Name > (); 
    couple.setPair (tweedleDee, tweedleDum); 
    System.out.println (couple); 
    couple.changeOrder (); 
    System.out.println (couple);
  }
}