logo

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));> >}> }>

>

statisk java
>

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


concat java-streng



// 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

lambda funksjon 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));> >}> }>

>

eksempel binært søketre

>

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>));> >}> }>

>

int til char java

>

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]>