class ArrayEg4
{
public static void main ( String[] args )
{
int[] valA = { 12, 23, 45, 56 };
int[] valB = new int[4];
valB[ 0 ] = valA[ 0 ] ;
valB[ 1 ] = valA[ 1 ] ;
valB[ 2 ] = valA[ 2 ] ;
valB[ 3 ] = valA[ 3 ] ;
}
}
In diesem Beispiel wird das int in Slot 0 von valA
in den Slot 0 von valB kopiert und so weiter.
Dies ist genau wie eine Zuweisungsanweisung
spot = source
wo beide Variablen vom primitiven Typ int sind.
Nachdem die vier Zuweisungsanweisungen in der Antwort ausgeführt wurden,
enthält jedes der Arrays die gleichen Werte in derselben Reihenfolge:
Die folgende Anweisung macht nicht dasselbe:
valB = valA ;
Denken Sie daran, dass Arrays Objekt sind. Die oben stehende Anweisung
kopiert lediglich die Objektreferenz in valA in die Objektreferenzvariable valB, das ergibt zwei Möglichkeiten auf ein einziges Arrayobjekt zu zugreifen:
Das Objekt, das valB vorher referenziert hat, ist jetzt verloren
(es ist Garbage geworden).