Hallo Forum !
Kann mir bitte jemand folgends Programm erklären.
Bei der Definition von reverse() komme ich nicht ganz mit.
Mit "nt i = 0; i < arrayLenHalf; i++ " werden in diesm Fall alle Objecte mit Index von 0-2(weil int array.length / 2; 3 ist und i<arrayLenHalf; 0,1,2 ist (stimmt das soweit ??)), durchlaufen und einem neuen(umgekehrten) Index zugeordnet.
Was aber passiert mit den Obejkten deren Index grösser als array.length / 2; ist. Die werden ja nicht durchlaufen und somit auch nicht umgedreht. Oder ??
Kann mir das bitte jemand, so einfach wie möglcih erklären.
Danke
lg
Kann mir bitte jemand folgends Programm erklären.
Code:
import java.awt.Point;
public class Umdreher
{
public static void main( String[] args )
{
Object punkte[] = {
new Point(1,1),
new Point(2,2),
"new Point(5,5)",
new Point(7,5),
new Point(2,2),
new Point(2,5),
new Point(4,5),
};
reverse( punkte );
for ( int i = 0; i < punkte.length; i++ )
{
System.out.println( punkte[i] );
}
}
public static void reverse( Object[] array )
{
if ( array == null )
return;
int arrayLenHalf = array.length / 2;
for ( int i = 0; i < arrayLenHalf; i++ )
{
Object swap = array[ i ];
array[i] = array[ array.length - i - 1 ];
array[array.length - i - 1] = swap;
}
}
}
Bei der Definition von reverse() komme ich nicht ganz mit.
Mit "nt i = 0; i < arrayLenHalf; i++ " werden in diesm Fall alle Objecte mit Index von 0-2(weil int array.length / 2; 3 ist und i<arrayLenHalf; 0,1,2 ist (stimmt das soweit ??)), durchlaufen und einem neuen(umgekehrten) Index zugeordnet.
Was aber passiert mit den Obejkten deren Index grösser als array.length / 2; ist. Die werden ja nicht durchlaufen und somit auch nicht umgedreht. Oder ??
Kann mir das bitte jemand, so einfach wie möglcih erklären.
Danke
lg