Array-Methoden
Teil des Abschnitts Grundlagen der Java-Journey von Coddy. Lektion 61 von 73.
Arrays enthalten viele Methoden (Funktionalitäten). Um auf eine Methode zuzugreifen, schreibe:
Arrays.methodName(arrayName, otherParameters)Hier ist eine Liste der grundlegenden Methoden:
fill(array, value)– füllt das Array mit einem bestimmten Wert
toString()– wandelt das Array in eine Zeichenkette um
sort(array)– sortiert das Array in aufsteigender Reihenfolge
equals(array1, array2)– vergleicht zwei Arrays, um festzustellen, ob sie gleich sind
Hier ist ein Beispiel für die Verwendung der Methode fill mit toString:
int[] numbers = new int[5];
Arrays.fill(numbers, 10);
System.out.println(Arrays.toString(numbers));Dies gibt [10, 10, 10, 10, 10] aus.
Beispiel für die Methode sort:
int[] numbers = {5, 2, 9, 1, 5, 6};
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));Dies gibt [1, 2, 5, 5, 6, 9] aus.
Aufgabe
EinfachErstelle eine Methode namens merge, die zwei Arrays als Argumente erhält. Die Methode führt die beiden Arrays zu einem sortierten Array zusammen und gibt es zurück.
Wichtig: Das endgültige zusammengeführte Array muss in aufsteigender Reihenfolge sortiert sein.
Zum Beispiel liefern die folgenden Argumente: merge(new String[] {"1", "4", "2"}, new String[] {"2", "5", "9"}) das Ergebnis ["1", "2", "2", "4", "5", "9"] zurück (beachte, dass das Ergebnis sortiert ist).
Verwende System.arraycopy(), um Elemente von einem Array in ein anderes zu kopieren. Die Syntax lautet:
System.arraycopy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)System.arraycopy() kopiert nur in ein Array, das bereits existiert; das Ziel-Array wird niemals vergrößert. Erstelle zuerst das zusammengeführte Array mit arr1.length + arr2.length Plätzen, kopiere arr1 an Position 0 und kopiere anschließend arr2 ab Position arr1.length.
Zum Beispiel:
// Quell-Array
String[] sourceArray = {"1", "2", "3", "4", "5"};
// Ziel-Array
String[] destinationArray = new String[5];
// Elemente von sourceArray nach destinationArray kopieren
System.arraycopy(sourceArray, 0, destinationArray, 0, 5);Ziel-Array nach dem Kopieren: 1 2 3 4 5
Probier es selbst
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static String[] merge(String[] arr1, String[] arr2) {
// Hier Code schreiben
return null;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String textArr1 = scanner.nextLine();
String textArr2 = scanner.nextLine();
String[] arr1 = textArr1.split(",");
String[] arr2 = textArr2.split(",");
String[] mergedArray = merge(arr1, arr2);
System.out.println(Arrays.toString(mergedArray));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorInkrement/DekrementPost-Inkrement/DekrementArithmetische KurzformenVergleichsoperatorenString-Vergleich7Grundlegende Ein-/Ausgabe
System.out-MethodenAusgabe formatierenScanner-KlasseWiederholung – Bis 120Wiederholung – Wahr oder falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 411Grundlagen von Arrays
Arrays deklarierenAuf Elemente zugreifenArrays ändernArray-MethodenWiederholung – Produkt-ArrayWiederholung – umgekehrtes Array3Variablen Teil 2
KonstantenNamenskonventionenRückblick – Variablen initialisierenTypumwandlung Teil 1Typumwandlung Teil 26Entscheidungen treffen
If-AnweisungIf - ElseSwitch-AnweisungTernärer OperatorRückblick - If ElseVerschachteltes If - ElseÜbe selbstständig: Online-Java-Compiler