The Polia trieda v balík java.util je súčasťou Java Collection Framework . Táto trieda poskytuje statické metódy na dynamické vytváranie a prístup Java polia . Pozostáva len zo statických metód a metód triedy Object. Metódy tejto triedy môžu byť použité samotným názvom triedy.
Hierarchia tried je nasledovná:
java.lang.Object ? java.util.Arrays>
Geek, teraz sa musíte čudovať, prečo potrebujeme triedu java Arrays, keď sme schopní deklarovať, inicializovať a počítať operácie nad poliami. Odpoveď na túto otázku však leží v metódach tejto triedy, o ktorých budeme diskutovať ďalej, pretože prakticky tieto funkcie pomáhajú programátorom rozširovať obzory pomocou polí, napríklad často sú prípady, keď slučky sa používajú na vykonávanie niektorých úloh v poli, ako napríklad:
- Vyplňte pole konkrétnou hodnotou.
- Zoradiť polia.
- Hľadajte v poliach.
- A mnoho ďalších.
Trieda Arrays poskytuje niekoľko statických metód, ktoré možno použiť na vykonávanie týchto úloh priamo bez použitia slučiek, vďaka čomu je náš kód super krátky a optimalizovaný.
Syntax: Deklarácia triedy
public class Arrays extends Object>
Syntax: Ak chcete použiť polia
Arrays.;>
Metódy v triede Java Array
Trieda Arrays balíka java.util obsahuje niekoľko statických metód, ktoré možno použiť na vyplnenie, triedenie, vyhľadávanie atď. v poliach. Teraz poďme diskutovať o metódach tejto triedy, ktoré sú uvedené nižšie v tabuľkovom formáte takto:
Metódy | Akcia vykonaná |
---|---|
asList() | Vráti zoznam s pevnou veľkosťou podporovaný zadanými poliami |
binárne vyhľadávanie () | Hľadá zadaný prvok v poli pomocou Binárneho vyhľadávacieho algoritmu |
binárne vyhľadávanie (pole, z indexu, do indexu, kľúč, porovnávač) | Vyhľadáva zadaný objekt v rozsahu zadaného poľa pomocou binárneho vyhľadávacieho algoritmu |
porovnať (pole 1, pole 2) | Porovná dve polia odovzdané ako parametre lexikograficky. |
copyOf(originalArray, newLength) | Skopíruje zadané pole, orezanie alebo výplň s predvolenou hodnotou (ak je to potrebné), aby mala kópia zadanú dĺžku. |
copyOfRange(originalArray, fromIndex, endIndex) | Skopíruje zadaný rozsah zadaného poľa do nových polí. |
deepEquals(Object[] a1, Object[] a2) | Vráti hodnotu true, ak sú dve špecifikované polia navzájom hlboko rovnaké. |
deepHashCode(Object[] a) | Vráti hašovací kód založený na hlbokom obsahu zadaných polí. |
deepToString(Object[] a) | Vráti reťazcovú reprezentáciu hlbokého obsahu zadaných polí. |
rovná sa(pole1, pole2) | Skontroluje, či sú obe polia rovnaké alebo nie. |
fill(originalArray, fillValue) | Priradí túto hodnotu výplne každému indexu tohto poľa. |
hashCode(originalArray) | Vráti celočíselný hashCode tejto inštancie poľa. |
nezhoda(pole1, pole2) | Nájde a vráti index prvého nezhodného prvku medzi dvoma zadanými poliami. |
parallelPrefix(originalArray, fromIndex, endIndex, functionOperator) | Vykoná parallelPrefix pre daný rozsah poľa so zadaným funkčným operátorom. |
parallelPrefix(originalArray, operátor) | Vykoná parallelPrefix pre celé pole so zadaným funkčným operátorom. |
parallelSetAll(originalArray, functionGenerator) | Nastaví všetky prvky tohto poľa paralelne pomocou poskytnutej funkcie generátora. |
parallelSort(originalArray) | Zoradí zadané pole pomocou paralelného triedenia. |
setAll(originalArray, FunctionalGenerator) | Nastaví všetky prvky zadaného poľa pomocou poskytnutej funkcie generátora. |
zoradiť (originalArray) | Zoradí celé pole vo vzostupnom poradí. |
sort(originalArray, fromIndex, endIndex) | Zoradí zadaný rozsah poľa vzostupne. |
zoradiť (T[] a, int z indexu, int do indexu, komparátor c) | Zoradí zadaný rozsah zadaného poľa objektov podľa poradia vyvolaného zadaným komparátorom. |
zoradiť(T[] a, Porovnávač c) | Zoradí zadané pole objektov podľa poradia vyvolaného zadaným komparátorom. |
rozdeľovač (originalArray) | Vráti rozdeľovač pokrývajúci všetky zadané polia. |
rozdeľovač (originalArray, fromIndex, endIndex) | Vráti Spliterator typu poľa pokrývajúceho zadaný rozsah zadaných polí. |
stream (originalArray) | Vráti sekvenčný prúd so zadaným poľom ako zdrojom. |
toString(originalArray) | Vráti reťazcovú reprezentáciu obsahu tohto poľa. Reťazcová reprezentácia pozostáva zo zoznamu prvkov poľa uzavretých v hranatých zátvorkách ([]). Susedné prvky sú oddelené znakmi čiarkou, za ktorou nasleduje medzera. Prvky sa konvertujú na reťazce ako pomocou funkcie String.valueOf(). |
Implementácia:
Príklad 1: asList() Metóda
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));> > }> }> |
plátok java
>
>Výkon
Integer Array as List: [[I@2f4d3709]>
Príklad 2: binárne vyhľadávanie () Metóda
Tieto metódy hľadajú zadaný prvok v poli pomocou binárneho vyhľadávacieho algoritmu.
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));> > }> }> |
>
>Výkon
22 found at index = 3>
Príklad 3: binarySearch(pole, fromIndex, toIndex, key, Comparator) Metóda
Táto metóda hľadá zadaný objekt v rozsahu zadaného poľa pomocou binárneho vyhľadávacieho algoritmu.
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));> > }> }> |
>
>Výkon
22 found at index = -4>
Príklad 4: Porovnať (pole 1, pole 2) Metóda
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));> > }> }> |
>
>Výkon
Integer Arrays on comparison: 1>
Príklad 5: PorovnaťUnsigned(pole 1, pole 2) Metóda
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));> > }> }> |
>
>Výkon
Integer Arrays on comparison: 1>
Príklad 6: metóda copyOf(originalArray, newLength).
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> )));> > }> }> |
>
>Výkon
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOf: Integer Array: [10, 20, 15, 22, 35, 0, 0, 0, 0, 0]>
Príklad 7: metóda copyOfRange(originalArray, fromIndex, endIndex).
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> )));> > }> }> |
>
>Výkon
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOfRange: Integer Array: [20, 15]>
Príklad 8: deepEquals(Object[] a1, Object[] a2) Metóda
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));> > }> }> |
>
>Výkon
Integer Arrays on comparison: false>
Príklad 9: deepHashCode(Object[] a) Metóda
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));> > }> }> |
>
>Výkon
Integer Array: 38475344>
Príklad 10: deepToString(Object[] a) Metóda
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));> > }> }> |
>
>Výkon
Integer Array: [[10, 20, 15, 22, 35]]>
Príklad 11: rovná sa (pole1, pole2) Metóda
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));> > }> }> |
>
>Výkon
Integer Arrays on comparison: false>
Príklad 12: fill(originalArray, fillValue) Metóda
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));> > }> }> |
>
>Výkon
Integer Array on filling: [22, 22, 22, 22, 22]>
Príklad 13: metóda hashCode(originalArray).
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));> > }> }> |
>
>Výkon
Integer Array: 38475313>
Príklad 14: mismatch(pole1, pole2) Metóda
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));> > }> }> |
java for loop
>
>Výkon
The element mismatched at index: 1>
Príklad 15: Metóda parallelSort(originalArray).
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));> > }> }> |
>
>Výkon
Integer Array: [10, 15, 20, 22, 35]>
Príklad 16: zoradiť (originalArray) Metóda
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));> > }> }> |
>
>Výkon
Integer Array: [10, 15, 20, 22, 35]>
Príklad 17: sort(originalArray, fromIndex, endIndex) Metóda
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));> > }> }> |
>
>Výkon
Integer Array: [10, 15, 20, 22, 35]>
Príklad 18: zoradiť (T[] a, int z indexu, int do indexu, komparátor c) Metóda
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]); } }> |
>
>Výkon
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 131 aaaa nyc 121 cccc jaipur>
Príklad 19: zoradiť(T[] a, Porovnávač c) Metóda
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]); } }> |
>
>Výkon
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc>
Príklad 20: metóda spliterator(originalArray).
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));> > }> }> |
>
>Výkon
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
Príklad 21: spliterator(originalArray, fromIndex, endIndex) Metóda
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> ));> > }> }> |
>
>Výkon
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
Príklad 22: metóda stream(originalArray).
Java
// 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));> > }> }> |
>
>Výkon
Integer Array: java.util.stream.IntPipeline$Head@7291c18f>
Príklad 23: toString(originalArray) Metóda
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));> > }> }> |
>
>Výkon
Integer Array: [10, 20, 15, 22, 35]>