Der Arrays Klasse in java.util-Paket ist ein Teil der Java Collection Framework . Diese Klasse stellt statische Methoden zum dynamischen Erstellen und Zugreifen bereit Java-Arrays . Es besteht nur aus statischen Methoden und den Methoden der Object-Klasse. Die Methoden dieser Klasse können vom Klassennamen selbst verwendet werden.
Die Klassenhierarchie ist wie folgt:
java.lang.Object ? java.util.Arrays>
Geek, jetzt fragen Sie sich bestimmt, warum wir die Java-Arrays-Klasse brauchen, wenn wir doch in der Lage sind, Operationen über Arrays zu deklarieren, zu initialisieren und zu berechnen. Die Antwort darauf liegt jedoch in den Methoden dieser Klasse, die wir weiter diskutieren werden, da diese Funktionen Programmierern praktisch dabei helfen, ihren Horizont mit Arrays zu erweitern, wie es beispielsweise oft der Fall ist Schleifen werden verwendet, um einige Aufgaben auf einem Array auszuführen, wie zum Beispiel:
- Füllen Sie ein Array mit einem bestimmten Wert.
- Sortieren Sie ein Array.
- Suche in einem Array.
- Und viele mehr.
Hier stellt die Arrays-Klasse mehrere statische Methoden bereit, mit denen diese Aufgaben direkt ohne den Einsatz von Schleifen ausgeführt werden können, wodurch unser Code sehr kurz und optimiert wird.
Syntax: Klassendeklaration
public class Arrays extends Object>
Syntax: Um Arrays zu verwenden
Arrays.;>
Methoden in der Java-Array-Klasse
Die Arrays-Klasse des java.util-Pakets enthält mehrere statische Methoden, die zum Füllen, Sortieren, Suchen usw. in Arrays verwendet werden können. Lassen Sie uns nun die Methoden dieser Klasse diskutieren, die unten in tabellarischer Form wie folgt dargestellt sind:
| Methoden | Handlung ausgeführt |
|---|---|
| asList() | Gibt eine Liste fester Größe zurück, die von den angegebenen Arrays unterstützt wird |
| binäre Suche() | Sucht mit Hilfe des binären Suchalgorithmus nach dem angegebenen Element im Array |
| binärSuche(array, fromIndex, toIndex, key, Comparator) | Durchsucht einen Bereich des angegebenen Arrays nach dem angegebenen Objekt mithilfe des binären Suchalgorithmus |
| vergleichen(Array 1, Array 2) | Vergleicht zwei als Parameter übergebene Arrays lexikografisch. |
| copyOf(originalArray, newLength) | Kopiert das angegebene Array und schneidet es ab oder füllt es mit dem Standardwert auf (falls erforderlich), sodass die Kopie die angegebene Länge hat. |
| copyOfRange(originalArray, fromIndex, endIndex) | Kopiert den angegebenen Bereich des angegebenen Arrays in ein neues Array. |
| deepEquals(Object[] a1, Object[] a2) | Gibt „true“ zurück, wenn die beiden angegebenen Arrays weitgehend gleich sind. |
| deepHashCode(Object[] a) | Gibt einen Hash-Code zurück, der auf den tiefen Inhalten der angegebenen Arrays basiert. |
| deepToString(Object[] a) | Gibt eine Zeichenfolgendarstellung des tiefen Inhalts der angegebenen Arrays zurück. |
| gleich(Array1, Array2) | Überprüft, ob beide Arrays gleich sind oder nicht. |
| fill(originalArray, fillValue) | Weist diesen Füllwert jedem Index dieses Arrays zu. |
| hashCode(originalArray) | Gibt einen ganzzahligen HashCode dieser Array-Instanz zurück. |
| Nichtübereinstimmung(Array1, Array2) | Sucht den Index des ersten nicht übereinstimmenden Elements zwischen den beiden angegebenen Arrays und gibt ihn zurück. |
| parallelPrefix(originalArray, fromIndex, endIndex, funktionalOperator) | Führt parallelPrefix für den angegebenen Bereich des Arrays mit dem angegebenen Funktionsoperator aus. |
| parallelPrefix(originalArray, Operator) | Führt parallelPrefix für das gesamte Array mit dem angegebenen Funktionsoperator aus. |
| parallelSetAll(originalArray, funktionalGenerator) | Legt alle Elemente dieses Arrays mithilfe der bereitgestellten Generatorfunktion parallel fest. |
| parallelSort(originalArray) | Sortiert das angegebene Array mithilfe der parallelen Sortierung. |
| setAll(originalArray, funktionalGenerator) | Legt alle Elemente des angegebenen Arrays mithilfe der bereitgestellten Generatorfunktion fest. |
| sort(originalArray) | Sortiert das gesamte Array in aufsteigender Reihenfolge. |
| sort(originalArray, fromIndex, endIndex) | Sortiert den angegebenen Array-Bereich in aufsteigender Reihenfolge. |
| sort(T[] a, int fromIndex, int toIndex, Comparator c) | Sortiert den angegebenen Bereich des angegebenen Arrays von Objekten entsprechend der durch den angegebenen Komparator vorgegebenen Reihenfolge. |
| sort(T[] a, Komparator c) | Sortiert das angegebene Array von Objekten entsprechend der durch den angegebenen Komparator vorgegebenen Reihenfolge. |
| Splitterator(originalArray) | Gibt einen Spliterator zurück, der alle angegebenen Arrays abdeckt. |
| Spliterator(originalArray, fromIndex, endIndex) | Gibt einen Spliterator vom Typ des Arrays zurück, der den angegebenen Bereich der angegebenen Arrays abdeckt. |
| stream(originalArray) | Gibt einen sequentiellen Stream mit dem angegebenen Array als Quelle zurück. |
| toString(originalArray) | Es gibt eine Zeichenfolgendarstellung des Inhalts dieses Arrays zurück. Die Zeichenfolgendarstellung besteht aus einer Liste der Elemente des Arrays, eingeschlossen in eckige Klammern ([]). Benachbarte Elemente werden durch die Zeichen Komma gefolgt von einem Leerzeichen getrennt. Elemente werden wie durch die Funktion String.valueOf() in Zeichenfolgen konvertiert. |
Implementierung:
Beispiel 1: asList() Methode
Java
// Java Program to Demonstrate Arrays Class> // Via asList() method> > // Importing Arrays utility class> // from java.util package> import> java.util.Arrays;> > // Main class> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To convert the elements as List> >System.out.println(>'Integer Array as List: '> >+ Arrays.asList(intArr));> >}> }> |
>
>Ausgabe
Integer Array as List: [[I@2f4d3709]>
Beispiel 2: binäre Suche() Methode
Diese Methode sucht mit Hilfe des binären Suchalgorithmus nach dem angegebenen Element im Array.
Java
// Java Program to Demonstrate Arrays Class> // Via binarySearch() method> > // Importing Arrays utility class> // from java.util package> import> java.util.Arrays;> > // Main class> public> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >Arrays.sort(intArr);> > >int> intKey =>22>;> > >// Print the key and corresponding index> >System.out.println(> >intKey +>' found at index = '> >+ Arrays.binarySearch(intArr, intKey));> >}> }> |
>
>Ausgabe
22 found at index = 3>
Beispiel 3: binäreSuche(array, fromIndex, toIndex, key, Comparator) Methode
Diese Methode durchsucht mithilfe des binären Suchalgorithmus einen Bereich des angegebenen Arrays nach dem angegebenen Objekt.
Java
// Java program to demonstrate> // Arrays.binarySearch() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >Arrays.sort(intArr);> > >int> intKey =>22>;> > >System.out.println(> >intKey> >+>' found at index = '> >+ Arrays> >.binarySearch(intArr,>1>,>3>, intKey));> >}> }> |
>
>Ausgabe
22 found at index = -4>
Beispiel 4: vergleichen(Array 1, Array 2) Methode
Java
// Java program to demonstrate> // Arrays.compare() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// Get the second Array> >int> intArr1[] = {>10>,>15>,>22> };> > >// To compare both arrays> >System.out.println(>'Integer Arrays on comparison: '> >+ Arrays.compare(intArr, intArr1));> >}> }> |
>
>Ausgabe
Integer Arrays on comparison: 1>
Beispiel 5: CompareUnsigned(Array 1, Array 2) Methode
Java
// Java program to demonstrate> // Arrays.compareUnsigned() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Arrays> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// Get the second Arrays> >int> intArr1[] = {>10>,>15>,>22> };> > >// To compare both arrays> >System.out.println(>'Integer Arrays on comparison: '> >+ Arrays.compareUnsigned(intArr, intArr1));> >}> }> |
>
dynamische Programmierung
>Ausgabe
Integer Arrays on comparison: 1>
Beispiel 6: copyOf(originalArray, newLength) Methode
Java
// Java program to demonstrate> // Arrays.copyOf() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To print the elements in one line> >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> > >System.out.println(>'
New Arrays by copyOf:
'>);> > >System.out.println(>'Integer Array: '> >+ Arrays.toString(> >Arrays.copyOf(intArr,>10>)));> >}> }> |
>
>Ausgabe
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOf: Integer Array: [10, 20, 15, 22, 35, 0, 0, 0, 0, 0]>
Beispiel 7: copyOfRange(originalArray, fromIndex, endIndex) Methode
Java
// Java program to demonstrate> // Arrays.copyOfRange() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To print the elements in one line> >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> > >System.out.println(>'
New Arrays by copyOfRange:
'>);> > >// To copy the array into an array of new length> >System.out.println(>'Integer Array: '> >+ Arrays.toString(> >Arrays.copyOfRange(intArr,>1>,>3>)));> >}> }> |
>
>Ausgabe
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOfRange: Integer Array: [20, 15]>
Beispiel 8: deepEquals(Object[] a1, Object[] a2) Methode
Java
// Java program to demonstrate> // Arrays.deepEquals() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Arrays> >int> intArr[][] = { {>10>,>20>,>15>,>22>,>35> } };> > >// Get the second Arrays> >int> intArr1[][] = { {>10>,>15>,>22> } };> > >// To compare both arrays> >System.out.println(>'Integer Arrays on comparison: '> >+ Arrays.deepEquals(intArr, intArr1));> >}> }> |
>
>Ausgabe
Integer Arrays on comparison: false>
Beispiel 9: deepHashCode(Object[] a) Methode
Java
// Java program to demonstrate> // Arrays.deepHashCode() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[][] = { {>10>,>20>,>15>,>22>,>35> } };> > >// To get the dep hashCode of the arrays> >System.out.println(>'Integer Array: '> >+ Arrays.deepHashCode(intArr));> >}> }> |
>
>Ausgabe
Integer Array: 38475344>
Beispiel 10: deepToString(Object[] a) Methode
Java
// Java program to demonstrate> // Arrays.deepToString() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[][] = { {>10>,>20>,>15>,>22>,>35> } };> > >// To get the deep String of the arrays> >System.out.println(>'Integer Array: '> >+ Arrays.deepToString(intArr));> >}> }> |
>
>Ausgabe
Integer Array: [[10, 20, 15, 22, 35]]>
Beispiel 11: equal(array1, array2) Methode
Java
// Java program to demonstrate> // Arrays.equals() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Arrays> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// Get the second Arrays> >int> intArr1[] = {>10>,>15>,>22> };> > >// To compare both arrays> >System.out.println(>'Integer Arrays on comparison: '> >+ Arrays.equals(intArr, intArr1));> >}> }> |
>
>Ausgabe
Integer Arrays on comparison: false>
Beispiel 12: fill(originalArray, fillValue) Methode
Java
// Java program to demonstrate> // Arrays.fill() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Arrays> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >int> intKey =>22>;> > >Arrays.fill(intArr, intKey);> > >// To fill the arrays> >System.out.println(>'Integer Array on filling: '> >+ Arrays.toString(intArr));> >}> }> |
>
>Ausgabe
Integer Array on filling: [22, 22, 22, 22, 22]>
Beispiel 13: hashCode(originalArray) Method
Java
// Java program to demonstrate> // Arrays.hashCode() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To get the hashCode of the arrays> >System.out.println(>'Integer Array: '> >+ Arrays.hashCode(intArr));> >}> }> |
>
>Ausgabe
Integer Array: 38475313>
Beispiel 14: mismatch(array1, array2) Methode
Java
// Java program to demonstrate> // Arrays.mismatch() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Arrays> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// Get the second Arrays> >int> intArr1[] = {>10>,>15>,>22> };> > >// To compare both arrays> >System.out.println(>'The element mismatched at index: '> >+ Arrays.mismatch(intArr, intArr1));> >}> }> |
>
Prioritätswarteschlange
>Ausgabe
The element mismatched at index: 1>
Beispiel 15: parallelSort(originalArray)-Methode
Java
// Java program to demonstrate> // Arrays.parallelSort() method> > // Importing Arrays class from> // java.util package> import> java.util.Arrays;> > // Main class> public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To sort the array using parallelSort> >Arrays.parallelSort(intArr);> > >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> >}> }> |
>
>Ausgabe
Integer Array: [10, 15, 20, 22, 35]>
Beispiel 16: sort(originalArray) Methode
Java
// Java program to demonstrate> // Arrays.sort() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To sort the array using normal sort-> >Arrays.sort(intArr);> > >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> >}> }> |
>
>Ausgabe
Integer Array: [10, 15, 20, 22, 35]>
Beispiel 17: sort(originalArray, fromIndex, endIndex) Methode
Java
// Java program to demonstrate> // Arrays.sort() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To sort the array using normal sort> >Arrays.sort(intArr,>1>,>3>);> > >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> >}> }> |
>
>Ausgabe
Integer Array: [10, 15, 20, 22, 35]>
Beispiel 18: sort(T[] a, int fromIndex, int toIndex, Comparator c) Methode
Java
// Java program to demonstrate working of Comparator> // interface> import> java.util.*;> import> java.lang.*;> import> java.io.*;> > // A class to represent a student.> class> Student {> >int> rollno;> >String name, address;> > >// Constructor> >public> Student(>int> rollno, String name,> >String address)> >{> >this>.rollno = rollno;> >this>.name = name;> >this>.address = address;> >}> > >// Used to print student details in main()> >public> String toString()> >{> >return> this>.rollno +>' '> >+>this>.name +>' '> >+>this>.address;> >}> }> > class> Sortbyroll>implements> Comparator {> >// Used for sorting in ascending order of> >// roll number> >public> int> compare(Student a, Student b)> >{> >return> a.rollno - b.rollno;> >}> }> > // Driver class> class> Main {> >public> static> void> main(String[] args)> >{> >Student[] arr = {>new> Student(>111>,>'bbbb'>,>'london'>),> >new> Student(>131>,>'aaaa'>,>'nyc'>),> >new> Student(>121>,>'cccc'>,>'jaipur'>) };> > >System.out.println(>'Unsorted'>);> >for> (>int> i =>0>; i System.out.println(arr[i]); Arrays.sort(arr, 1, 2, new Sortbyroll()); System.out.println('
Sorted by rollno'); for (int i = 0; i System.out.println(arr[i]); } }> |
>
>Ausgabe
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 131 aaaa nyc 121 cccc jaipur>
Beispiel 19: sort(T[] a, Komparator c) Methode
Java
// Java program to demonstrate working of Comparator> // interface> import> java.util.*;> import> java.lang.*;> import> java.io.*;> > // A class to represent a student.> class> Student {> >int> rollno;> >String name, address;> > >// Constructor> >public> Student(>int> rollno, String name,> >String address)> >{> >this>.rollno = rollno;> >this>.name = name;> >this>.address = address;> >}> > >// Used to print student details in main()> >public> String toString()> >{> >return> this>.rollno +>' '> >+>this>.name +>' '> >+>this>.address;> >}> }> > class> Sortbyroll>implements> Comparator {> > >// Used for sorting in ascending order of> >// roll number> >public> int> compare(Student a, Student b)> >{> >return> a.rollno - b.rollno;> >}> }> > // Driver class> class> Main {> >public> static> void> main(String[] args)> >{> >Student[] arr = {>new> Student(>111>,>'bbbb'>,>'london'>),> >new> Student(>131>,>'aaaa'>,>'nyc'>),> >new> Student(>121>,>'cccc'>,>'jaipur'>) };> > >System.out.println(>'Unsorted'>);> >for> (>int> i =>0>; i System.out.println(arr[i]); Arrays.sort(arr, new Sortbyroll()); System.out.println('
Sorted by rollno'); for (int i = 0; i System.out.println(arr[i]); } }> |
>
>Ausgabe
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc>
Beispiel 20: spliterator(originalArray)-Methode
Java
// Java program to demonstrate> // Arrays.spliterator() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To sort the array using normal sort> >System.out.println(>'Integer Array: '> >+ Arrays.spliterator(intArr));> >}> }> |
>
>Ausgabe
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
Beispiel 21: spliterator(originalArray, fromIndex, endIndex) Methode
Java
// Java program to demonstrate> // Arrays.spliterator() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To sort the array using normal sort> >System.out.println(>'Integer Array: '> >+ Arrays.spliterator(intArr,>1>,>3>));> >}> }> |
>
>Ausgabe
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
Beispiel 22: stream(originalArray)-Methode
Java
np.log
// Java program to demonstrate> // Arrays.stream() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To get the Stream from the array> >System.out.println(>'Integer Array: '> >+ Arrays.stream(intArr));> >}> }> |
>
>Ausgabe
Integer Array: java.util.stream.IntPipeline$Head@7291c18f>
Beispiel 23: toString(originalArray) Methode
Java
// Java program to demonstrate> // Arrays.toString() method> > import> java.util.Arrays;> > public> class> Main {> >public> static> void> main(String[] args)> >{> > >// Get the Array> >int> intArr[] = {>10>,>20>,>15>,>22>,>35> };> > >// To print the elements in one line> >System.out.println(>'Integer Array: '> >+ Arrays.toString(intArr));> >}> }> |
>
>Ausgabe
Integer Array: [10, 20, 15, 22, 35]>