home *** CD-ROM | disk | FTP | other *** search
/ BUG 15 / BUGCD1998_06.ISO / aplic / jbuilder / jsamples.z / Finding1.java < prev    next >
Encoding:
Java Source  |  1997-07-30  |  1.5 KB  |  48 lines

  1. // Copyright(c) 1996,1997 ObjectSpace, Inc.
  2.  
  3. import COM.objectspace.jgl.*;
  4.  
  5. /**
  6.  * Finding a single element, conditional searching, finding consecutive elements.
  7.  *
  8.  * @see COM.objectspace.jgl.Finding
  9.  * @version 2.0.2
  10.  * @author ObjectSpace, Inc.
  11.  */
  12.  
  13. public class Finding1
  14.   {
  15.   public static void main( String[] args )
  16.     {
  17.     Array array = new Array();
  18.     array.add( "cat" );
  19.     array.add( "dog" );
  20.     array.add( "emu" );
  21.     array.add( "dog" );
  22.     array.add( "dog" );
  23.     ArrayIterator i = array.begin();
  24.  
  25.     while ( true )
  26.       {
  27.       i = (ArrayIterator) Finding.find( i, array.end(), "dog" );
  28.       if ( i.atEnd() ) // A simpler way: if ( i.equals( array.end() ) )...
  29.         break;
  30.       System.out.println( "iterator found " + i.get() + " at index " + i.index() );
  31.       i.advance();
  32.       }
  33.  
  34.     int intArray[] = { 3, 6, 2, 1, 8, 9, 4, 5 };
  35.     IntIterator j = (IntIterator) Finding.findIf( IntIterator.begin( intArray ), IntIterator.end( intArray ), new BindSecondPredicate( new GreaterNumber(), new Integer( 7 ) ) );
  36.     System.out.println( "First element > 7 is " + j.get() + " at index " + j.index() );
  37.  
  38.     DList list = new DList();
  39.     list.add( "cat" );
  40.     list.add( "dog" );
  41.     list.add( "emu" );
  42.     list.add( "emu" );
  43.     list.add( "dog" );
  44.     DListIterator k = (DListIterator) Finding.adjacentFind( list, new EqualTo() );
  45.     System.out.println( "First consecutive sequence is of " + k.get() + " at index " + k.index() );
  46.     }
  47.   }
  48.