import java.math.BigInteger; class FindMaxDemo { /** * Return max item in a. * Precondition: a.length > 0 */ public static Comparable findMax( Comparable [ ] a ) { int maxIndex = 0; for( int i = 1; i < a.length; i++ ) if( a[ i ].compareTo( a[ maxIndex ] ) > 0 ) maxIndex = i; return a[ maxIndex ]; } /** * Test findMax on BigInteger and String objects. */ public static void main( String [ ] args ) { BigInteger [ ] bi1 = { new BigInteger( "8764" ), new BigInteger( "29345" ), new BigInteger( "1818" ) }; String [ ] st1 = { "Joe", "Bob", "Bill", "Zeke" }; System.out.println( findMax( bi1 ) ); System.out.println( findMax( st1 ) ); } }