Ja. Auch wenn das nicht oft gebraucht wird.
Array.equals()
Die Klasse Arrays
enthält viele nützliche Klassenmethoden (static
), um Arrays zu handhaben. Da es sich um Klassenmethoden, werden sie über den Klassennamen aufgerufen.
Hier ist ein Beispiel, das eine dieser Methoden verwendet:
import java.util.Arrays; // das Paket importieren class ArrayGleichheit { public static void main ( String[] args ) { int[] arrayE = { 1, 2, 3, 4 }; int[] arrayF = { 1, 2, 3, 4 }; if ( Arrays.equals( arrayE, arrayF ) ) // die Methode ueber den Klassennamen aufrufen System.out.println( "Gleich" ); else System.out.println( "Nicht gleich" ); } } Ausgabe: Gleich
Zwei Arrays sind gleich, wenn sie die gleiche Anzahl an Elementen haben und die gleichen Elemente in der gleichen Reihenfolge enthalten. Beide Arrays müssen den gleichen Typ haben.
A. Was gibt dieses Fragment aus?
int[] arrayE = { 1, 2, 3, 4, 5 }; int[] arrayF = { 1, 2, 3, 4 }; if ( Arrays.equals( arrayE, arrayF ) ) System.out.println( "Gleich" ); else System.out.println( "Nicht gleich" );
B. Was gibt dieses Fragment aus?
int[] arrayE = { 4, 3, 2, 1 }; int[] arrayF = { 1, 2, 3, 4 }; if ( Arrays.equals( arrayE, arrayF ) ) System.out.println( "Gleich" ); else System.out.println( "Nicht gleich" );
C. Was gibt dieses Fragment aus?
int[] arrayE = { 4, 3, 2, 1 }; if ( Arrays.equals( arrayE, arrayE ) ) System.out.println( "Gleich" ); else System.out.println( "Nicht gleich" );