Ja. Neue Zeilen wurden in das Programm eingefügt, um das zu tun:
public class ArrayDemo
{
public static void main ( String[] args )
{
int[] ar1 = { -20, 19, 1, 5, -1, 27, 19, 5 } ;
int[] ar2 = { 2, 4, 1, 2, 6, 3, 6, 9 } ;
System.out.println("Das erste Maximum ist: " + ArrayOps.findMax( ar1 ) );
System.out.println("Das zweite Maximum ist: " + ArrayOps.findMax( ar2 ) );
}
}
class ArrayOps
{
// der Parameter x verweist auf die Daten
public static int findMax( int[] x ) // mit denen die Methode aufgerufen wird
{
int max = x[0];
for ( int index=0; index < x.length; index++ )
if ( x[index] > max )
max = x[index] ;
return max ;
}
}
In dem überarbeiteten Programm wird die findMax() Methode zuerst mit dem einen Array und dann mit einem anderen Array verwendet.
Das ist möglich, da der Parameter x der Methode immer auf
das jeweils aktuelle Array verweist, welches auch immer beim Aufruf der Methode verwendet wird.
Das Programm gibt aus:
C:\>java ArrayDemo Das erste Maximum ist: 27 Das zweite Maximum ist: 9
int sein?