logo

Masyvų klasė Java

The Masyvai klasėje java.util paketą yra dalis Java kolekcijos sistema . Šioje klasėje pateikiami statiniai metodai, skirti dinamiškai kurti ir pasiekti Java masyvai . Jį sudaro tik statiniai metodai ir Object klasės metodai. Šios klasės metodus gali naudoti pats klasės pavadinimas.

Klasių hierarchija yra tokia:

java.lang.Object ? java.util.Arrays>

Geek, dabar jums tikriausiai kyla klausimas, kodėl mums reikia „Java Arrays“ klasės, kai galime deklaruoti, inicijuoti ir apskaičiuoti operacijas per masyvus. Atsakymas į šį klausimą slypi šios klasės metoduose, kuriuos aptarsime toliau, nes praktiškai šios funkcijos padeda programuotojams išplėsti akiratį su masyvais, pavyzdžiui, dažnai pasitaiko atvejų, kai kilpos naudojami kai kurioms masyvo užduotims atlikti, pavyzdžiui:



  • Užpildykite masyvą tam tikra reikšme.
  • Rūšiuoti masyvus.
  • Ieškokite masyvuose.
  • Ir daug daugiau.

Čia „Arrays“ klasė pateikia keletą statinių metodų, kuriuos galima naudoti atliekant šias užduotis tiesiogiai, nenaudojant kilpų, todėl mūsų kodas yra labai trumpas ir optimizuotas.

Sintaksė: Klasės deklaracija

public class Arrays extends Object>

Sintaksė: Norėdami naudoti masyvus

Arrays.;>

Metodai Java masyvo klasėje

Paketo java.util klasėje Arrays yra keli statiniai metodai, kuriuos galima naudoti masyvuose pildyti, rūšiuoti, ieškoti ir pan. Dabar aptarkime šios klasės metodus, kurie pateikiami toliau lentelės formatu:

Metodai Veiksmas atliktas
asList() Grąžina fiksuoto dydžio sąrašą, paremtą nurodytais masyvais
dvejetainė paieška () Dvejetainės paieškos algoritmo pagalba ieško nurodyto elemento masyve
dvejetainė paieška (masyvas, fromIndex, toIndex, raktas, palyginimo priemonė) Naudodamas dvejetainės paieškos algoritmą, ieško nurodyto masyvo diapazone nurodyto objekto
palyginti (masyvas 1, masyvas 2) Leksikografiškai lygina du masyvus, perduodamus kaip parametrus.
kopija(originalus masyvas, naujas ilgis) Nukopijuoja nurodytą masyvą, sutrumpina arba užpildo numatytąją reikšmę (jei reikia), kad kopija būtų nurodyto ilgio.
„copyOfRange“ (originalArray, fromIndex, endIndex) Nukopijuoja nurodytą nurodyto masyvo diapazoną į naują masyvą.
deepEquals(Object[] a1, Object[] a2) Grąžina tiesa, jei du nurodyti masyvai yra labai lygūs vienas kitam.
deepHashCode(Object[] a) Grąžina maišos kodą, pagrįstą giliu nurodytų masyvų turiniu.
deepToString(Object[] a) Grąžina nurodytų masyvų giluminio turinio eilutės atvaizdavimą.
lygus(masyvas1, masyvas2) Patikrina, ar abu masyvai yra vienodi, ar ne.
užpildyti (originalus masyvas, užpildymo vertė) Priskiria šią užpildymo reikšmę kiekvienam šio masyvo indeksui.
maišos kodas (originalus masyvas) Grąžina sveikąjį šio masyvo egzemplioriaus maišos kodą.
neatitikimas(masyvas1, masyvas2) Suranda ir grąžina pirmojo nesuderinamo elemento tarp dviejų nurodytų masyvų indeksą.
paralelinis prefiksas (originalus masyvas, iš indekso, pabaigos indeksas, funkcinis operatorius) Atlieka parallelPrefix nurodytam masyvo diapazonui su nurodytu funkciniu operatoriumi.
lygiagretus prefiksas (originalus masyvas, operatorius) Atlieka parallelPrefix visam masyvei su nurodytu funkciniu operatoriumi.
parallelSetAll (originalus masyvas, funkcinis generatorius) Naudodami pateiktą generatoriaus funkciją, lygiagrečiai nustato visus šio masyvo elementus.
lygiagretus rūšiavimas (originalArray) Rūšiuoja nurodytą masyvą lygiagrečiu rūšiavimu.
setAll (originalus masyvas, funkcinis generatorius) Naudodami pateiktą generatoriaus funkciją nustato visus nurodyto masyvo elementus.
Rūšiuoti (originalus masyvas) Rūšiuoja visą masyvą didėjančia tvarka.
Rūšiuoti (originalus masyvas, iš indekso, pabaigos indeksas) Rūšiuoja nurodytą masyvo diapazoną didėjančia tvarka.
Rūšiuoti (T[] a, int fromIndex, int toIndex, Comparator c) Rūšiuoja nurodytą objektų masyvo nurodytą diapazoną pagal nurodyto lygintuvo sukeltą tvarką.
Rūšiuoti (T[] a, lyginamoji priemonė c) Rūšiuoja nurodytą objektų masyvą pagal nurodyto lygintuvo sukeltą tvarką.
skirstytuvas (originalus masyvas) Grąžina skirstytuvą, apimantį visus nurodytus masyvus.
skirstytuvas (originalArray, fromIndex, endIndex) Grąžina masyvo tipo skirstytuvą, apimantį nurodytą nurodytų masyvų diapazoną.
srautas (originalus masyvas) Grąžina nuoseklų srautą, kurio šaltinis yra nurodytas masyvas.
toString(originalArray) Jis grąžina šio masyvo turinio eilutę. Eilutės atvaizdavimas susideda iš masyvo elementų sąrašo, pateikto laužtiniuose skliaustuose ([]). Gretimi elementai yra atskirti simboliais kableliu ir tarpu. Elementai konvertuojami į eilutes naudojant String.valueOf() funkciją.

Įgyvendinimas:

1 pavyzdys: asList() Metodas

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

>

>

Išvestis

Integer Array as List: [[I@2f4d3709]>

2 pavyzdys: dvejetainė paieška () Metodas

Šis metodas ieško nurodyto elemento masyve, naudodamas dvejetainį paieškos algoritmą.

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

>

>

Išvestis

22 found at index = 3>

3 pavyzdys: binarySearch(masyvas, fromIndex, toIndex, key, Comparator) Metodas

Šis metodas ieško nurodyto masyvo diapazone nurodyto objekto, naudodamas dvejetainį paieškos algoritmą.

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

>

>

Išvestis

22 found at index = -4>

4 pavyzdys: palyginti(masyvas 1, masyvas 2) Metodas

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

>

>

Išvestis

Integer Arrays on comparison: 1>

5 pavyzdys: palyginti Nepaženklintas(masyvas 1, masyvas 2) Metodas

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

>

>

Išvestis

Integer Arrays on comparison: 1>

6 pavyzdys: copyOf(originalArray, newLength) metodas

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

>

>

Išvestis

Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOf: Integer Array: [10, 20, 15, 22, 35, 0, 0, 0, 0, 0]>

7 pavyzdys: CopyOfRange(originalArray, fromIndex, endIndex) metodas

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

>

>

Išvestis

Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOfRange: Integer Array: [20, 15]>

8 pavyzdys: deepEquals(Object[] a1, Object[] a2) Metodas

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

>

>

Išvestis

Integer Arrays on comparison: false>

9 pavyzdys: deepHashCode(Object[] a) Metodas

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

>

>

Išvestis

Integer Array: 38475344>

10 pavyzdys: deepToString(Object[] a) Metodas

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

>

>

Išvestis

Integer Array: [[10, 20, 15, 22, 35]]>

11 pavyzdys: lygu(masyvas1, masyvas2) Metodas

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

>

>

Išvestis

Integer Arrays on comparison: false>

12 pavyzdys: užpildyti (originalus masyvas, užpildymo vertė) Metodas

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

>

>

Išvestis

Integer Array on filling: [22, 22, 22, 22, 22]>

13 pavyzdys: hashCode(originalArray) metodas

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

>

>

Išvestis

Integer Array: 38475313>

14 pavyzdys: mismatch(masyvas1, masyvas2) metodas

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

>

>

Išvestis

The element mismatched at index: 1>

15 pavyzdys: Paralelinis Rūšiavimo(originalArray) metodas

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

>

>

Išvestis

Integer Array: [10, 15, 20, 22, 35]>

16 pavyzdys: Rūšiuoti (originalus masyvas) Metodas

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

>

>

Išvestis

Integer Array: [10, 15, 20, 22, 35]>

17 pavyzdys: Rūšiuoti (originalus masyvas, iš indekso, pabaigos indeksas) Metodas

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

>

>

Išvestis

Integer Array: [10, 15, 20, 22, 35]>

18 pavyzdys: Rūšiuoti (T[] a, int fromIndex, int toIndex, Comparator c) Metodas

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

>

>

Išvestis

Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 131 aaaa nyc 121 cccc jaipur>

19 pavyzdys: Rūšiuoti (T[] a, lyginamoji priemonė c) Metodas

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

>

>

Išvestis

Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc>

20 pavyzdys: skirstytuvo (originalArray) metodas

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

>

>

Išvestis

Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>

21 pavyzdys: skirstytuvo (originalus masyvas, iš indekso, pabaigos indeksas) metodas

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

>

>

Išvestis

Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>

22 pavyzdys: srautas (originalus masyvas) metodas

Java


bash patikrinkite, ar nustatytas aplinkos kintamasis



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

>

>

Išvestis

Integer Array: java.util.stream.IntPipeline$Head@7291c18f>

23 pavyzdys: toString(originalArray) Metodas

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

>

>

Išvestis

Integer Array: [10, 20, 15, 22, 35]>