jumbo.euclid
Class StringSet

java.lang.Object
  |
  +--jumbo.euclid.StringSet

public class StringSet
extends java.lang.Object

Stores a unique set of Strings. By default this is case-sensitive, but the user can set this to insensitive. The actual value stored is case-sensitive. Also keeps a score of the indexNumber of each element, and can thus be used for keying Vectors.


Field Summary
static int IGNORE_CASE
           
 
Constructor Summary
StringSet()
          default contsructor is case-sensitive
StringSet(int ignore)
          set case insensitivity if 'ignore' arg is 'StringSet.IGNORE_CASE'
StringSet(java.lang.String[] strings)
          create a StringSet from the Strings (duplicates are ignored); case-sensitive
 
Method Summary
 void addElement(java.lang.String value)
          adds an element.
 void addSet(StringSet is)
          catenates one set onto another.
 boolean contains(java.lang.String value)
          does Set contain String? (according to case-sensitivity
 void contract()
          contract buffer to exact number of elements
 void debug()
           
 java.lang.String elementAt(int i)
          return (case-sensitive) element
 java.lang.String[] getElements()
          return all members (case sensitive by default)
 boolean getIgnoreCase()
          state of case-sensitivity
 int indexOf(java.lang.String value)
          index of a given String (default is case-sensitive); -1 if not found
 IntSet indexSortAscending()
           
 IntSet indexSortDescending()
          sort elem into descending order via indexes; elem NOT MODIFIED
static void main(java.lang.String[] args)
           
 void reverse()
          MODIFIES StringSet to be in reverse order
 int size()
           
 void sortAscending()
          MODIFIES StringSet to be in ascending order
 void sortDescending()
          MODIFIES StringSet to be in descending order
 java.lang.String toString()
          outputs the components as a list separated by "\n" - bad luck if they already contain this!
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

IGNORE_CASE

public static final int IGNORE_CASE
Constructor Detail

StringSet

public StringSet()
default contsructor is case-sensitive

StringSet

public StringSet(int ignore)
set case insensitivity if 'ignore' arg is 'StringSet.IGNORE_CASE'

StringSet

public StringSet(java.lang.String[] strings)
create a StringSet from the Strings (duplicates are ignored); case-sensitive
Method Detail

contract

public void contract()
contract buffer to exact number of elements

getElements

public java.lang.String[] getElements()
return all members (case sensitive by default)

size

public int size()

getIgnoreCase

public boolean getIgnoreCase()
state of case-sensitivity

addElement

public void addElement(java.lang.String value)
adds an element. If String is already present, does nothing

contains

public boolean contains(java.lang.String value)
does Set contain String? (according to case-sensitivity

indexOf

public int indexOf(java.lang.String value)
index of a given String (default is case-sensitive); -1 if not found

elementAt

public java.lang.String elementAt(int i)
return (case-sensitive) element

addSet

public void addSet(StringSet is)
            throws StringSetException
catenates one set onto another. Fails if Sets differ in case-sensitivity.
Throws:
StringSetException - mixed case is not allowed

debug

public void debug()

toString

public java.lang.String toString()
outputs the components as a list separated by "\n" - bad luck if they already contain this!
Overrides:
toString in class java.lang.Object

sortAscending

public void sortAscending()
MODIFIES StringSet to be in ascending order

sortDescending

public void sortDescending()
MODIFIES StringSet to be in descending order

reverse

public void reverse()
MODIFIES StringSet to be in reverse order

indexSortAscending

public IntSet indexSortAscending()

indexSortDescending

public IntSet indexSortDescending()
sort elem into descending order via indexes; elem NOT MODIFIED

main

public static void main(java.lang.String[] args)