The Masīvi klasē iekšā java.util pakotne ir daļa no Java kolekcijas ietvars . Šī klase nodrošina statiskas metodes dinamiskai izveidei un piekļuvei Java masīvi . Tas sastāv tikai no statiskām metodēm un objektu klases metodēm. Šīs klases metodes var izmantot pats klases nosaukums.
Klases hierarhija ir šāda:
java.lang.Object ? java.util.Arrays>
Geek, tagad jūs noteikti domājat, kāpēc mums ir vajadzīga java masīvu klase, ja mēs varam deklarēt, inicializēt un aprēķināt darbības masīvos. Tomēr atbilde uz to slēpjas šīs klases metodēs, kuras mēs apspriedīsim tālāk, jo praktiski šīs funkcijas palīdz programmētājiem paplašināt redzesloku ar masīviem, piemēram, bieži vien ir gadījumi, kad cilpas tiek izmantoti, lai veiktu dažus uzdevumus masīvā, piemēram:
- Aizpildiet masīvu ar noteiktu vērtību.
- Kārtojiet masīvus.
- Meklēt masīvos.
- Un vēl daudz vairāk.
Šeit Arrays klase nodrošina vairākas statiskas metodes, kuras var izmantot, lai veiktu šos uzdevumus tieši, neizmantojot cilpas, tādējādi padarot mūsu kodu īpaši īsu un optimizētu.
Sintakse: Klases deklarācija
public class Arrays extends Object>
Sintakse: Lai izmantotu masīvus
Arrays.;>
Metodes Java masīvu klasē
Pakotnes java.util klasē Arrays ir vairākas statiskas metodes, kuras var izmantot, lai masīvos aizpildītu, kārtotu, meklētu utt. Tagad apspriedīsim šīs klases metodes, kas ir parādītas zemāk tabulas formātā:
| Metodes | Darbība veikta |
|---|---|
| asList() | Atgriež fiksēta lieluma sarakstu, kas nodrošināts ar norādītajiem masīviem |
| binarySearch() | Meklē norādīto elementu masīvā ar binārās meklēšanas algoritma palīdzību |
| binārā meklēšana (masīvs, fromIndex, toIndex, atslēga, Comparator) | Meklē noteiktā masīva diapazonā norādītajam objektam, izmantojot binārās meklēšanas algoritmu |
| salīdzināt (masīvs 1, masīvs 2) | Leksikogrāfiski salīdzina divus masīvus, kas nodoti kā parametri. |
| kopija(sākotnējais masīvs, jauns garums) | Kopē norādīto masīvu, saīsinot vai papildinot ar noklusējuma vērtību (ja nepieciešams), lai kopijai būtu norādītais garums. |
| copyOfRange(oriģinālais masīvs, fromIndex, endIndex) | Kopē norādītā masīva norādīto diapazonu jaunā masīvā. |
| deepEquals(Objekts[] a1, Objekts[] a2) | Atgriež vērtību True, ja divi norādītie masīvi ir dziļi vienādi viens ar otru. |
| deepHashCode (Objekts[] a) | Atgriež jaucējkodu, pamatojoties uz norādīto masīvu dziļo saturu. |
| deepToString(Objekts[] a) | Atgriež norādīto masīvu dziļā satura virknes attēlojumu. |
| vienāds(masīvs1, masīvs2) | Pārbauda, vai abi masīvi ir vienādi vai nē. |
| aizpildīt (sākotnējais masīvs, aizpildīšanas vērtība) | Piešķir šo aizpildījuma vērtību katram šī masīva indeksam. |
| hashCode (sākotnējais masīvs) | Atgriež šī masīva gadījuma veselu skaitļu hashCode. |
| neatbilstība(masīvs1, masīvs2) | Atrod un atgriež pirmā nesaskaņotā elementa indeksu starp diviem norādītajiem masīviem. |
| paralēlais prefikss (sākotnējais masīvs, no indeksa, beigu indekss, funkcionālais operators) | Dotajam masīva diapazonam veic parallelPrefix ar norādīto funkcionālo operatoru. |
| paralēlais prefikss (sākotnējais masīvs, operators) | Veic paralēlo prefiksu pilnam masīvam ar norādīto funkcionālo operatoru. |
| parallelSetAll (sākotnējais masīvs, funkcionāls ģenerators) | Iestata visus šī masīva elementus paralēli, izmantojot nodrošināto ģeneratora funkciju. |
| paralēlā kārtošana (sākotnējais masīvs) | Sakārto norādīto masīvu, izmantojot paralēlo kārtošanu. |
| setAll (sākotnējais masīvs, funkcionālais ģenerators) | Iestata visus norādītā masīva elementus, izmantojot nodrošināto ģeneratora funkciju. |
| kārtot (sākotnējais masīvs) | Sakārto visu masīvu augošā secībā. |
| kārtot (sākotnējais masīvs, no indeksa, beigu indekss) | Sakārto norādīto masīva diapazonu augošā secībā. |
| kārtot (T[] a, int no indeksa, int uz indeksu, salīdzinātājs c) | Sakārto norādīto objektu masīva norādīto diapazonu atbilstoši norādītā salīdzinātāja ierosinātajai secībai. |
| kārtot (T[] a, salīdzinātājs c) | Sakārto norādīto objektu masīvu atbilstoši norādītā salīdzinātāja ierosinātajai secībai. |
| sadalītājs (sākotnējais masīvs) | Atgriež sadalītāju, kas aptver visus norādītos masīvus. |
| sadalītājs (sākotnējais masīvs, no indeksa, beigu indekss) | Atgriež masīva veida sadalītāju, kas aptver norādīto norādīto masīvu diapazonu. |
| straume (sākotnējais masīvs) | Atgriež secīgu straumi ar norādīto masīvu kā avotu. |
| toString(originalArray) | Tas atgriež šī masīva satura virknes attēlojumu. Virknes attēlojums sastāv no masīva elementu saraksta, kas ievietots kvadrātiekavās ([]). Blakus esošie elementi ir atdalīti ar rakstzīmēm ar komatu, kam seko atstarpe. Elementi tiek pārveidoti par virknēm, izmantojot funkciju String.valueOf(). |
Īstenošana:
1. piemērs: 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));> >}> }> |
>
>Izvade
Integer Array as List: [[I@2f4d3709]>
2. piemērs: binarySearch() Metode
Šī metode meklē norādīto elementu masīvā ar binārā meklēšanas algoritma palīdzību.
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));> >}> }> |
>
>Izvade
22 found at index = 3>
3. piemērs: binārā meklēšana (masīvs, fromIndex, toIndex, atslēga, Comparator) metode
Šī metode meklē noteiktā masīva diapazonā norādīto objektu, izmantojot bināro meklēšanas 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));> >}> }> |
>
>Izvade
22 found at index = -4>
4. piemērs: salīdzināt(masīvs 1, masīvs 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));> >}> }> |
>
>Izvade
ievietot tastatūrā
Integer Arrays on comparison: 1>
5. piemērs: salīdzināt Neparakstīts(masīvs 1, masīvs 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));> >}> }> |
>
>Izvade
Integer Arrays on comparison: 1>
6. piemērs: 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>)));> >}> }> |
>
>Izvade
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOf: Integer Array: [10, 20, 15, 22, 35, 0, 0, 0, 0, 0]>
7. piemērs: 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>)));> >}> }> |
>
>Izvade
Integer Array: [10, 20, 15, 22, 35] New Arrays by copyOfRange: Integer Array: [20, 15]>
8. piemērs: deepEquals(Objekts[] a1, Objekts[] 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));> >}> }> |
>
>Izvade
Integer Arrays on comparison: false>
9. piemērs: deepHashCode(Object[] a) Metode
c++ int uz virkni
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));> >}> }> |
>
>Izvade
Integer Array: 38475344>
10. piemērs: deepToString(Object[] 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));> >}> }> |
>
>Izvade
Integer Array: [[10, 20, 15, 22, 35]]>
11. piemērs: vienāds(masīvs1, masīvs2) 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));> >}> }> |
>
>Izvade
Integer Arrays on comparison: false>
12. piemērs: aizpildīt (sākotnējais masīvs, aizpildīšanas vērtība) 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));> >}> }> |
>
>Izvade
Integer Array on filling: [22, 22, 22, 22, 22]>
13. piemērs: 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));> >}> }> |
>
>Izvade
Integer Array: 38475313>
14. piemērs: nesakritības(masīvs1, masīvs2) 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));> >}> }> |
>
>Izvade
The element mismatched at index: 1>
15. piemērs: ParalēlāSort(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));> >}> }> |
>
>Izvade
Integer Array: [10, 15, 20, 22, 35]>
16. piemērs: kārtot (sākotnējais masīvs) 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));> >}> }> |
>
>Izvade
Integer Array: [10, 15, 20, 22, 35]>
17. piemērs: kārtot (sākotnējais masīvs, no indeksa, beigu indekss) Metode
Java
komanda arp-a
// 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));> >}> }> |
>
>Izvade
Integer Array: [10, 15, 20, 22, 35]>
18. piemērs: kārtot (T[] a, int no indeksa, int uz indeksu, salīdzinātājs 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]); } }> |
>
>Izvade
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 131 aaaa nyc 121 cccc jaipur>
19. piemērs: kārtot (T[] a, salīdzinātājs 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]); } }> |
>
>Izvade
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc>
20. piemērs: sadalītāja (oriģinālais masīvs) metode
kādi mēneši ir Q3
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));> >}> }> |
>
>Izvade
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
21. piemērs: sadalītājs (sākotnējais masīvs, no indeksa, beigu indekss) 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>));> >}> }> |
>
>Izvade
Integer Array: java.util.Spliterators$IntArraySpliterator@4e50df2e>
22. piemērs: straumes (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));> >}> }> |
>
>Izvade
Integer Array: java.util.stream.IntPipeline$Head@7291c18f>
23. piemērs: 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));> >}> }> |
>
>Izvade
Integer Array: [10, 20, 15, 22, 35]>