public void sortByValue() {
         // Sorts the cards in the vHand so that cards of the same value are
         // grouped together.  Cards with the same value are sorted by suit.
         // Note that aces are considered to have the lowest value, 1.
      Vector vNewHand = new Vector();
      while (vHand.size() > 0) {
         int pos = 0;  // Position of minimal card.
         Card c = (Card)vHand.elementAt(0);  // Minumal card.
         for (int i = 1; i < vHand.size(); i++) {
            Card c1 = (Card)vHand.elementAt(i);
            if ( c1.getValue() < c.getValue() ||
                    (c1.getValue() == c.getValue() && c1.getSuit() < c.getSuit()) ) {
                pos = i;
                c = c1;
            }
         }
         vHand.removeElementAt(pos);
         vNewHand.addElement(c);
      }
      vHand = vNewHand;
   }