Arrays-klassen i Java
De Matriser klasse i java.util-pakken er en del av Java Collection Framework . Denne klassen gir statiske metoder for dynamisk opprettelse og tilgang Java-matriser . Den består kun av statiske metoder og metodene til Object class. Metodene til denne klassen kan brukes av selve klassenavnet.
Klassehierarkiet er som følger:
java.lang.Object ? java.util.Arrays
Geek, nå må du lure på hvorfor vi trenger java Arrays-klassen når vi er i stand til å deklarere, initialisere og beregne operasjoner over arrays. Svaret på dette ligger imidlertid innenfor metodene i denne klassen som vi skal diskutere videre, da disse funksjonene praktisk talt hjelper programmerere med å utvide horisonten med matriser, for eksempel er det ofte tider når løkker brukes til å gjøre noen oppgaver på en matrise som:
- Fyll en matrise med en bestemt verdi.
- Sorter en matrise.
- Søk i en matrise.
- Og mange flere.
Her tilbyr Arrays-klassen flere statiske metoder som kan brukes til å utføre disse oppgavene direkte uten bruk av loops, og dermed gjør koden vår superkort og optimalisert.
Syntaks: Klasseerklæring
public class Arrays extends Object
Syntaks: For å bruke Arrays
Arrays.;
Metoder i Java Array Class
Arrays-klassen til java.util-pakken inneholder flere statiske metoder som kan brukes til å fylle, sortere, søke osv. i matriser. La oss nå diskutere metodene for denne klassen som er vist nedenfor i et tabellformat som følger:
| Metoder | Handling utført |
|---|---|
| asList() | Returnerer en liste med fast størrelse støttet av de angitte matrisene |
| binært søk() | Søker etter det spesifiserte elementet i matrisen ved hjelp av den binære søkealgoritmen |
| binært søk(matrise, fraindeks, tilindeks, nøkkel, komparator) | Søker i et område av den angitte matrisen for det spesifiserte objektet ved hjelp av den binære søkealgoritmen |
| sammenlign (matrise 1, matrise 2) | Sammenligner to matriser som sendes som parametere leksikografisk. |
| copyOf(originalArray, newLength) | Kopierer den angitte matrisen, trunkerer eller utfyller med standardverdien (hvis nødvendig), slik at kopien har den angitte lengden. |
| copyOfRange(originalArray, fromIndex, endIndex) | Kopierer det spesifiserte området til den angitte matrisen til en ny matrise. |
| deepEquals(Objekt[] a1, Objekt[] a2) | Returnerer sann hvis de to spesifiserte matrisene er dypt like med hverandre. |
| deepHashCode(Objekt[] a) | Returnerer en hash-kode basert på det dype innholdet i de angitte matrisene. |
| deepToString(Objekt[] a) | Returnerer en strengrepresentasjon av det dype innholdet i de angitte matrisene. |
| lik (matrise1, matrise2) | Sjekker om begge arrayene er like eller ikke. |
| fill(originalArray, fillValue) | Tildeler denne fyllverdien til hver indeks i denne matrisen. |
| hashCode(originalArray) | Returnerer en heltall hashCode for denne array-forekomsten. |
| mismatch (matrise1, matrise2) | Finner og returnerer indeksen til det første umatchede elementet mellom de to spesifiserte matrisene. |
| parallelPrefix(originalArray, fromIndex, endIndex, functionalOperator) | Utfører parallellprefiks for det gitte området til matrisen med den angitte funksjonelle operatoren. |
| parallelPrefix(originalArray, operator) | Utfører parallelPrefix for komplett array med den angitte funksjonelle operatøren. |
| parallelSetAll(originalArray, functionalGenerator) | Setter alle elementene i denne matrisen parallelt ved hjelp av den medfølgende generatorfunksjonen. |
| parallelSort(originalArray) | Sorterer den angitte matrisen ved hjelp av parallell sortering. |
| setAll(originalArray, functionalGenerator) | Stiller inn alle elementene i den spesifiserte matrisen ved hjelp av generatorfunksjonen som følger med. |
| sort(originalArray) | Sorterer hele matrisen i stigende rekkefølge. |
| sort(originalArray, fromIndex, endIndex) | Sorterer det spesifiserte området for matrise i stigende rekkefølge. |
| sort(T[] a, int fra indeks, int til indeks, komparator c) | Sorterer det spesifiserte området for det spesifiserte utvalget av objekter i henhold til rekkefølgen indusert av den spesifiserte komparatoren. |
| sort(T[] a, komparator c) | Sorterer det spesifiserte utvalget av objekter i henhold til rekkefølgen indusert av den spesifiserte komparatoren. |
| splitter (originalArray) | Returnerer en splitter som dekker alle de spesifiserte matrisene. |
| spliterator(originalArray, fromIndex, endIndex) | Returnerer en splitter av typen array som dekker det spesifiserte området til de spesifiserte arrayene. |
| stream (originalArray) | Returnerer en sekvensiell strøm med den angitte matrisen som kilde. |
| toString(originalArray) | Den returnerer en strengrepresentasjon av innholdet i denne matrisen. Strengrepresentasjonen består av en liste over arrayens elementer, omsluttet av firkantede parenteser ([]). Tilstøtende elementer er atskilt med tegnene et komma etterfulgt av et mellomrom. Elementer konverteres til strenger som ved String.valueOf()-funksjonen. |
Gjennomføring:
Eksempel 1: asList() Metode
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));> > }> }> |
Produksjon
Integer Array as List: [[I@2f4d3709]
Eksempel 2: binært søk() Metode
Denne metoden søker etter det spesifiserte elementet i matrisen ved hjelp av den binære søkealgoritmen.
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));> > }> }> |
Produksjon
22 found at index = 3
Eksempel 3: binarySearch(array, fromIndex, toIndex, key, Comparator) Metode
Denne metoden søker i et område av den spesifiserte matrisen for det spesifiserte objektet ved hjelp av den binære søkealgoritmen.
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));> > }> }> |
Produksjon
22 found at index = -4
Eksempel 4: sammenligne(matrise 1, matrise 2) Metode
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));> > }> }> |
Produksjon
Integer Arrays on comparison: 1
Eksempel 5: compareUnsigned(matrise 1, matrise 2) Metode
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));> > }> }> |
Produksjon
Integer Arrays on comparison: 1
Eksempel 6: copyOf(originalArray, newLength) Metode
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> )));> > }> }> |
Produksjon
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOf: Integer Array: [10, 20, 15, 22, 35, 0, 0, 0, 0, 0]
Eksempel 7: copyOfRange(originalArray, fromIndex, endIndex) Metode
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> )));> > }> }> |
Produksjon
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOfRange: Integer Array: [20, 15]
Eksempel 8: deepEquals(Objekt[] a1, Objekt[] a2) Metode
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));> > }> }> |
Produksjon
Integer Arrays on comparison: false
Eksempel 9: deepHashCode(Objekt[] a) Metode
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));> > }> }> |
Produksjon
Integer Array: 38475344
Eksempel 10: deepToString(Objekt[] a) Metode
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));> > }> }> |
Produksjon
Integer Array: [[10, 20, 15, 22, 35]]
Eksempel 11: lik(matrise1, matrise2) Metode
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));> > }> }> |
Produksjon
Integer Arrays on comparison: false
Eksempel 12: fill(originalArray, fillValue) Metode
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));> > }> }> |
Produksjon
Integer Array on filling: [22, 22, 22, 22, 22]
Eksempel 13: hashCode(originalArray) Metode
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));> > }> }> |
Produksjon
Integer Array: 38475313
Eksempel 14: mismatch(matrise1, matrise2) Metode
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));> > }> }> |
Produksjon
The element mismatched at index: 1
Eksempel 15: parallelSort(originalArray) Metode
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));> > }> }> |
Produksjon
Integer Array: [10, 15, 20, 22, 35]
Eksempel 16: sort(originalArray) Metode
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));> > }> }> |
Produksjon
Integer Array: [10, 15, 20, 22, 35]
Eksempel 17: sort(originalArray, fromIndex, endIndex) Metode
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));> > }> }> |
Produksjon
Integer Array: [10, 15, 20, 22, 35]
Eksempel 18: sort(T[] a, int fra indeks, int til indeks, komparator c) Metode
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]); } }> |
Produksjon
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 131 aaaa nyc 121 cccc jaipur
Eksempel 19: sort(T[] a, komparator c) Metode
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]); } }> |
Produksjon
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc
Eksempel 20: spliterator(originalArray) metode
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));> > }> }> |
Produksjon
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e
Eksempel 21: spliterator(originalArray, fromIndex, endIndex) Metode
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> ));> > }> }> |
Produksjon
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e
Eksempel 22: stream(originalArray) metode
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));> > }> }> |
Produksjon
Integer Array: java.util.stream.IntPipeline$Head@7291c18f
Eksempel 23: toString(originalArray) Metode
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));> > }> }> |
Produksjon
Integer Array: [10, 20, 15, 22, 35]